ich die folgende SQL-Anweisung haben:Überprüfen Sie, ob Spaltenwert vorhanden ist, bevor SELECT
SqlCommand myCmd = new SqlCommand("select distinct(year(date_created)) as theYear from content where folder_id = 1 or folder_id = 2 order by theYear desc", myConn);
Diese Anweisung überprüft Ordner für den Inhalt dann einen Tropfen Satzliste nach unten um das Jahr zu entsprechen. Wenn jedoch kein Inhalt in einem dieser Ordner vorhanden ist, wird die Anweisung abgebröckelt. Dies geschieht scheinbar jedes Jahr, wenn noch kein Inhalt erstellt wurde. Die einfache Antwort besteht darin, lediglich einen Teil des Inhalts zu erstellen, der das Problem behebt. Ich möchte sicherstellen, dass es so eingerichtet ist, dass sich niemand darum kümmern muss, falls etwas schief geht. Also, gibt es eine Möglichkeit zu überprüfen, ob es einen Wert in dieser Spalte gibt, bevor es versucht, auszuwählen.
Ich habe versucht, die folgenden:
SELECT DISTINCT (ISNULL(year(date_created), year(getdate()))) AS theYear
FROM content
WHERE folder_id = 1
OR folder_id = 2
ORDER BY theYear DESC
, die nicht zu arbeiten schien. Ich habe auch das COUNT versucht, aber entweder war meine Syntax falsch oder ich benutzte es falsch.
Kann mir jemand sagen, wo ich falsch gelaufen bin und was die richtige Methode wäre?
Nicht verwandt, aber: 'distinct' ist ** NOT ** eine Funktion. Benutze es nicht wie einen. –
Wie Sie Drop-down zuweisen, können Sie nicht die Logik dort überprüfen – TheGameiswar
@a_horse_with_no_name Danke für die Klarstellung! Das war der Code, den ich dort hatte, als ich ihn bekam, und ich wusste nicht, dass es unpassend war. –