2009-04-20 16 views
0

Ich versuche, die folgende Abfrage mit meiner Tabelle zu verwenden:Rückkehr Abfrage, wo Feld null ist

SELECT ARTICLE_NO, USERNAME, ACCESSSTARTS, ARTICLE_NAME, date_format(str_to_date(ACCESSSTARTS, '%d.%m.%Y %k:%i:%s'), '%d %m %Y') AS shortDate FROM AUCTIONS WHERE upper(ARTICLE_NAME) LIKE '%hardy%' and subcat = 'null' ORDER BY str_to_date(ACCESSSTARTS, '%d.%m.%Y %k:%i:%s'), article_no limit 0, 10 

Dies sollte mehr als 100 Datensätze zurück. Subcat ist standardmäßig Null. Habe ich null falsch markiert oder gibt es eine andere Möglichkeit, Datensätze zurückzugeben, bei denen eine Spalte null ist?

+0

Spell Fehler in Frage Kopfzeile, "Retruning" statt "zurück" – NileshChauhan

Antwort

0

Die Abfrage sollte wie folgt aussehen:

SELECT ARTICLE_NO, USERNAME, ACCESSSTARTS, ARTICLE_NAME, date_format(str_to_date(ACCESSSTARTS, '%d.%m.%Y %k:%i:%s'), '%d %m %Y') AS shortDate 
FROM AUCTIONS 
WHERE upper(ARTICLE_NAME) LIKE '%hardy%' and subcat IS NULL 
ORDER BY str_to_date(ACCESSSTARTS, '%d.%m.%Y %k:%i:%s'), article_no limit 0, 10 

Beachten Sie die subcat IS NULL in der WHERE-Klausel.

+0

Dies liefert immer noch eine leere Ergebnismenge –

+0

Ich muss subcat = "" verwenden. Ich setze die Felder jedoch in mysql auf null. Liegt es daran, dass der Feldtyp Varchar ist? –

+0

versuchen Sie dies: Wählen Sie ARTICLE_NO, USERNAME, ACCESSSTARTS, ARTICLE_NAME, Datum_Format (STR_TO_DATE (ACCESSSTARTS,%% d.% M.% Y% k:% i:% s '),'% d% m% Y ') AS shortDate VON AUKTIONEN WHERE ARTICLE_NAME LIKE '% hardy%' und (subcat IST NULL ODER subcat = '') ORDER BY str_to_date (ACCESSSTARTS, '% d.% M.% Y% k:% i:% s'), article_no limit 0, 10 – rguerreiro

0

Verwenden

subcat IS NULL 

Abgesehen davon, ich glaube, Sie verwenden möchten:

lower(ARTICLE_NAME) LIKE '%hardy%' 

weil Sie Klein in dergleichen Zeichenfolge verwenden.

+0

Hmm, das gibt immer noch eine leere Ergebnismenge. –

+1

Versuchen Sie, die Like-Bedingung zu entfernen. Wenn das noch keine Zeilen gibt, probiere subcat = "" (leer statt NULL) –

+0

Im letzteren Fall musst du die Werte von subcat (in der Tabelle) –