Heute ist mein Kollege beim Schreiben von MySQL-Abfrageanweisungen auf ein sehr merkwürdiges Problem gestoßen. Bei der Verwendung einer MySQL-Abfrage mit mehreren Tabellen wird ein Feld in einer Tabelle als Abfragebedingung einer anderen Tabelle verwendet. Es kann nur eine Information gelesen werden, aber wenn eine Zahl direkt verwendet wird, kann sie normal gelesen werden. Die SQL-Anweisung lautet wie folgt: wähle a.id,a.title,b.idlist,b.aid aus Tabelle a,Tabelle2 b, wobei a.id in(b.idlist) und b.aid=2
Mit der obigen Anweisung können Sie ganz normal abfragen, aber Sie können nur eine Information abfragen. Mit der folgenden Anweisung können Sie jedoch ganz normal lesen. wähle a.id,a.title,b.idlist,b.aid aus Tabelle a,table2 b, wobei a.id in(1,2,3,4) und b.aid=2 ist Das ist ein sehr seltsames Problem. Zuerst dachte ich, es sei ein Datentypproblem, aber um Daten im Format
OK, versuchen wir es zunächst und ändern die ursprüngliche SQL-Anweisung zu Wählen Sie a.id, a.title, b.idlist, b.aid aus Tabelle a, Tabelle2 b, wobei FIND_IN_SET(a.id, b.idlist) und b.aid=2 Führen Sie die geänderte Anweisung aus, und sie kann schließlich normal gelesen werden. Nach der Analyse des Grundes liegt es letztendlich am Datentypproblem. Wenn wir direkt in (b.idlist) lesen, ist die gelesene b.idlist ein Zeichentyp, und in akzeptiert nur Zahlen. Obwohl beide "," haben, sind sie tatsächlich völlig unterschiedlich. Nun, das Problem ist gelöst. Wenn Sie mehr über die Verwendung der Funktion FIND_IN_SET() erfahren möchten, können Sie die entsprechenden Artikel auf der Seite lesen. Das könnte Sie auch interessieren:
|
<<: Fragen zum Vorstellungsgespräch zu JS 9 Promise
>>: Installieren Sie Windows Server 2019 auf VMware Workstation (Grafisches Tutorial)
Vorbereitung Zuerst müssen Sie nodejs herunterlad...
Vorwort Die Ähnlichkeiten und Unterschiede zwisch...
Wenn es eine Tabelle mit einem Feld „add_time“ gi...
Vor kurzem traten bei der Installation von Apache...
Es gibt viele Tutorials im Internet und sie sind ...
1. Was ist Scaffolding? 1. Vue-CLI Vue CLI ist ei...
Inhaltsverzeichnis 1 Begriffliche Abgrenzung 2 Fa...
Inhaltsverzeichnis Vorwort sql_mode erklärt Die w...
CentOS7 herunterladen Das Image, das ich herunter...
Hyperlink Hyperlinks sind die am häufigsten verwen...
Wir verwenden normalerweise Float-Layout, um die ...
Inhaltsverzeichnis 1. Standort / Matching 2. Stan...
In diesem Artikelbeispiel wird der spezifische Co...
Die virtuelle Maschine wird verwendet oder es kan...
1. Erklärung zur Datendesensibilisierung Bei den ...