Yahoo Clever wird am 4. Mai 2021 (Eastern Time, Zeitzone US-Ostküste) eingestellt. Ab dem 20. April 2021 (Eastern Time) ist die Website von Yahoo Clever nur noch im reinen Lesemodus verfügbar. Andere Yahoo Produkte oder Dienste oder Ihr Yahoo Account sind von diesen Änderungen nicht betroffen. Auf dieser Hilfeseite finden Sie weitere Informationen zur Einstellung von Yahoo Clever und dazu, wie Sie Ihre Daten herunterladen.
Sql-Abfrage: Leere Spalte?
Wie sieht eine Sql-Query aus in der ich abfrage welche Einträge nicht alle einzelnen Attribute festgelegt sind ?
Habe eine Datenbank zB Schuhe
Schuh Größe Farbe
1 43 gelb
2 rot
Ich möchte jetzt den zweiten schuh finden da er keine größe Angegeben hat.
mit WHERE ´groesse´ IS NOT null geht es übrigens nicht...
3 Antworten
- LydiaLv 5vor 8 JahrenBeste Antwort
So würde ich es machen:
Schon bei der Einrichtung der Tabelle würde ich die Spalte "Größe" als Integer einrichten und den Standardwert 0 zuordnen. Schuhe, deren Größe nicht angegeben ist, lassen sich somit durch eine simple SQL-Abfrage auflisten.
- 🐟 Fish 🐟Lv 7vor 8 Jahren
http://msdn.microsoft.com/de-de/library/ms188795.a...
Du siehst also das diese Syntax durchaus zulässig ist. Du musst allerdings beachten das ein leeres Feld nicht zwingend NULL ist. Es kann auch einen Leerstring beinhalten. Folglich muss die Where Klausel lauten
WHERE ((´groesse´ IS NOT NULL) AND NOT (´groesse´ = ''))
Je nach datenbank weicht auch die Abfrage ab.
http://www.teialehrbuch.de/Kostenlose-Kurse/SQL/14...
Also probier auch
NOT (´groesse´ = NULL)
- Anonymvor 8 Jahren
Unter Windows XP:
Start | Systemsteuerung | Leistung und Wartung | Verwaltung | Datenquellen (ODBC);
Unter älteren Windows-Versionen:
Start | Einstellungen | Systemsteuerung,
falls es hier einen ODBC-Datenquellen-Administrator gibt: anklicken,
sonst: Verwaltung | Datenquellen (ODBC) wählen.
SQL-Kommandos können mit 'psql' ausgeführt werden, zum Beispiel so (dabei nicht die abschlieÃenden Semikolons vergessen):
psql MeineTestDatenbank
create table MeineTestTabelle ( i int, c char(3), vc varchar(8000) );
insert into MeineTestTabelle values ( 7, 'aBc', 'xyzXYZ' );
select * from MeineTestTabelle;