Abrufen nicht leerer Spaltenwerte in MySQL
In MySQL kann die Auswahl von Datensätzen, in denen bestimmte Spalten nicht leere Werte enthalten, durch Vergleich erreicht werden mit einer leeren Zeichenfolge.
Abfrage Optimierung:
Betrachten Sie die folgende Abfrage:
select phone, phone2 from jewishyellow.users where phone like '813%' and phone2
Diese Abfrage zielt darauf ab, Zeilen abzurufen, in denen die Telefonnummer mit „813“ beginnt und phone2 nicht leer ist. Es bestehen jedoch Optimierungsprobleme.
Optimierte Lösung:
Um die Abfrage zu optimieren, vergleichen Sie die Spalte „phone2“ direkt mit einer leeren Zeichenfolge:
select phone, phone2 from jewishyellow.users where phone like '813%' and phone2<>''
Durch die Verwendung der <> (ungleich)-Operator: Die Abfrage schließt Zeilen aus, in denen phone2 leer ist, einschließlich solcher mit NULL-Werten. Dieser Ansatz verbessert die Abfrageleistung, indem die Auswertung von NULL-Werten vermieden wird.
Hinweis:
Es ist wichtig zu bedenken, dass NULL-Werte in MySQL als falsch interpretiert werden. Daher ruft die Abfrage keine Zeilen ab, in denen phone2 einen NULL-Wert hat, auch wenn sie technisch gesehen Daten enthalten.
Das obige ist der detaillierte Inhalt vonWie kann ich Zeilen mit nicht leeren Spaltenwerten in MySQL effizient abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!