Kerncode /*-------------------------------- Suchen Sie nach Datensätzen t1, bei denen zwei oder mehr Felder NULL sind: ID, ID1, ID2, ID3, ID4, ID5, ID6 In der t1-Tabelle gibt es ein Feld; Wobei ID der Primärschlüssel ist; Wie drucke ich die Datensatz-IDs, wenn ein oder mehrere Felder NULL sind? Und was ist die bequemste Möglichkeit, Datensätze während des Speichervorgangs nacheinander einzeln zu lesen? Hinweis: Die Primärschlüssel-ID hat keine Reihenfolge und kann auch eine Zeichenfolge sein. -----------------------------------------*/ Tabelle löschen, falls vorhanden, t1; Tabelle erstellen t1(id int,id1 int,id2 int,id3 int,id4 int,id5 int,id6 int); Einfügen t1 auswählen 1,1,1,1,1,null,null Vereinigung alle auswählen 2,null,null,null,1,2,3 Union alle auswählen 3,1,2,3,4,5,6 Union alle auswählen 4,1,2,3,4,5,null Union alle auswählen 5,null,3,4,null,null,null; Trennzeichen $$ Prozedur usp_c_null() erstellen beginnen Deklariere n_c int; deklariere idd int; deklarieren Sie den Cursor für ID auswählen, Fall char_length(concat(ifnull(id1,'@'),ifnull(id2,'@'),ifnull(id3,'@'),ifnull(id4,'@'),ifnull(id5,'@'),ifnull(id6,'@'))) - char_length (ersetzen (concat (wenn null (id1, '@'), wenn null (id2, '@'), wenn null (id3, '@'), wenn null (id4, '@'), wenn null (id5, '@'), wenn null (id6, '@')), '@', '')) wenn 6, dann 6, wenn 5, dann 5, wenn 4, dann 4, wenn 3, dann 3, wenn 2, dann 2, wenn 1, dann 1 sonst 0, Ende als c von t1; Deklarieren Sie den Exit-HANDLER für „nicht gefundenes close cur“; offenes Köcher; wiederholen hole cur in idd,n_c; wenn(n_c>=2) dann wählen Sie * aus t1, wobei id=idd; Ende, wenn; bis 0 Ende wiederholen; enger Köter; Ende ; $$ Trennzeichen ; /* +------+------+------+------+------+------+------+------+ | ID | ID1 | ID2 | ID3 | ID4 | ID5 | ID6 | +------+------+------+------+------+------+------+------+ | 1 | 1 | 1 | 1 | 1 | NULL | NULL | +------+------+------+------+------+------+------+------+ 1 Zeile im Satz (0,10 Sek.) +------+------+------+------+------+------+------+------+ | ID | ID1 | ID2 | ID3 | ID4 | ID5 | ID6 | +------+------+------+------+------+------+------+------+ | 2 | NULL | NULL | NULL | 1 | 2 | 3 | +------+------+------+------+------+------+------+------+ 1 Zeile im Satz (0,14 Sek.) +------+------+------+------+------+------+------+------+ | ID | ID1 | ID2 | ID3 | ID4 | ID5 | ID6 | +------+------+------+------+------+------+------+------+ | 5 | NULL | 3 | 4 | NULL | NULL | NULL | +------+------+------+------+------+------+------+------+ 1 Zeile im Satz (0,17 Sek.) */ Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung der For-Schleife und der doppelten For-Schleife in JavaScript
>>: Detaillierte Erklärung gängiger Docker Compose-Befehle
Einführung Xiao A war gerade dabei, Code zu schre...
Lassen Sie uns zuerst die Datentabelle erstellen....
Inhaltsverzeichnis 1. Plugins 2. Zwischenspiel 3....
Inhaltsverzeichnis 1. Filtern, Zuordnen und Reduz...
Der Schlüssel zum Erreichen der Zuordnung des Rahm...
Bevor Sie diesen Artikel lesen, hoffe ich, dass S...
Einführung Memcached ist ein verteiltes Caching-S...
Inhaltsverzeichnis Überblick 1. Download über URL...
Inhaltsverzeichnis einführen Vorbereiten Systemab...
Das Pre-Element definiert vorformatierten Text. In...
Inhaltsverzeichnis 1. Virtueller Host 1.1 Virtuel...
Wie können Sie die Leistung einer Webseite verbes...
<br />Die offizielle Version der Baidu-Enzyk...
Hardware-Ansichtsbefehle System # uname -a # Kern...
In diesem Artikel wird der Verbindungsfehler ECON...