首頁 >資料庫 >mysql教程 >如何解決在 MySQL WHERE 子句中使用 CONCAT 時出現「未知列」錯誤?

如何解決在 MySQL WHERE 子句中使用 CONCAT 時出現「未知列」錯誤?

Barbara Streisand
Barbara Streisand原創
2024-11-20 04:05:02256瀏覽

How to Resolve

MySQL Select with CONCAT Condition:解決「未知列」錯誤

當使用CONCAT 函數連接MySQL 查詢中的多個欄位時,如果您嘗試將連接字串作為WHERE 子句中的列進行引用,則可能會遇到「未知列」錯誤。

要解決這個問題,您有兩個選擇:

  1. 重複CONCAT 表達式:

    這涉及在WHERE子句中重複CONCAT 表達式。

    SELECT neededfield, CONCAT(firstname, ' ', lastname) as firstlast 
    FROM users
    WHERE CONCAT(firstname, ' ', lastname) = "Bob Michael Jones"
  2. 換行查詢:

    此方法涉及將原始查詢包裝在子查詢中,然後將連接的字串作為外部查詢的WHERE 子句中的欄位進行引用。

    SELECT * FROM (
      SELECT neededfield, CONCAT(firstname, ' ', lastname) as firstlast 
      FROM users) base 
    WHERE firstLast = "Bob Michael Jones"

透過實作這些選項中的任何一個,您可以連接多個欄位並將連接的字串用作 MySQL 查詢中的搜尋條件。

以上是如何解決在 MySQL WHERE 子句中使用 CONCAT 時出現「未知列」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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