首頁 >資料庫 >mysql教程 >如何從 SQL 資料庫中具有相似前綴的欄位中選擇資料?

如何從 SQL 資料庫中具有相似前綴的欄位中選擇資料?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-03 12:16:29846瀏覽

How Can I Select Data from Columns with Similar Prefixes in a SQL Database?

從具有相似前綴的列中提取資料

由於資料庫使用者經常遇到具有許多共享相似命名約定的列的表,因此根據這些前綴可能具有挑戰性。考慮一個包含“蔬菜名稱”、“水果名稱”和“肉類名稱”等列的表格。

在嘗試選擇與特定食物群組相關的所有資訊時,使用者嘗試:

<code class="sql">$Food = "Vegetable";
mysql_query("SELECT `" . $Food . "%` FROM `Foods`");</code>

然而,這個查詢被證明是無效的。為了解決這個問題,需要根據所需的前綴動態建立 SQL 查詢。

動態SQL 查詢產生

要擷取所需的資料列,請依照下列步驟操作步驟:

  1. 擷取列名:執行以下SQL 語句會擷取以指定開頭的所有欄位的名稱前綴:
<code class="sql">SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Foods'
    AND table_schema = 'YourDB'
    AND column_name LIKE 'Vegetable%'</code>
  1. 建構查詢字串:根據擷取的資料列名稱,使用適當的資料表名稱和列名稱列表動態建構SELECT 查詢。

範例:

假設擷取的欄位名稱為「蔬菜名稱」和「蔬菜類型」。以下查詢將從這些列中選擇資料:

<code class="sql">SELECT Vegetable_Name, Vegetable_Type
FROM Foods</code>

這種方法可以實現高效且有針對性的資料檢索,即使對於具有共享相似前綴的多個列的表也是如此。

以上是如何從 SQL 資料庫中具有相似前綴的欄位中選擇資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn