Heim > Datenbank > MySQL-Tutorial > Wie kann ich Spalten mit Platzhaltern in einer Datenbank dynamisch auswählen?

Wie kann ich Spalten mit Platzhaltern in einer Datenbank dynamisch auswählen?

Patricia Arquette
Freigeben: 2024-11-03 00:00:03
Original
1023 Leute haben es durchsucht

How can I dynamically select columns with wildcards in a database?

Dynamische Spaltenauswahl mit Platzhaltern

In einer Datenbank mit zahlreichen Spalten mit ähnlichen Präfixen kann die Auswahl bestimmter Spalten eine Herausforderung sein. Um dieses Problem zu beheben, sollten Sie eine dynamische SQL-Abfrage erstellen, die sich an die gewünschten Spaltennamen anpasst.

Zur Veranschaulichung nehmen wir an, dass wir eine Tabelle mit dem Namen „Lebensmittel“ mit Spalten wie „GemüseA“, „GemüseB“ haben. usw. Unser Ziel ist es, alle Spalten auszuwählen, die mit einem bestimmten Wort beginnen, beispielsweise „Gemüse“.

Der ursprüngliche Abfrageversuch, einen Platzhalter „$Food“ zu verwenden, erwies sich als wirkungslos. Eine praktikable Lösung besteht darin, eine dynamisch erstellte SQL-Abfrage zu verwenden, die den LIKE-Operator nutzt, um Spalten mit dem gewünschten Präfix abzugleichen. Die folgende Abfrage bietet einen Ausgangspunkt:

<code class="sql">SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Foods'
AND table_schema = 'YourDB'
AND column_name LIKE 'Vegetable%'</code>
Nach dem Login kopieren

In dieser Abfrage wird die Ansicht INFORMATION_SCHEMA.COLUMNS verwendet, um Spaltennamen abzurufen, die die Kriterien erfüllen. Die Filter table_name und table_schema stellen sicher, dass die Suche auf die gewünschte Tabelle und Datenbank beschränkt wird. Schließlich stimmt der Platzhalter „%“ des LIKE-Operators mit jeder Zeichenfolge überein, sodass wir alle Spalten erfassen können, die mit „Gemüse“ beginnen.

Das obige ist der detaillierte Inhalt vonWie kann ich Spalten mit Platzhaltern in einer Datenbank dynamisch auswählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage