簡體   English   中英

Concat一個字符串到SELECT * MySql

[英]Concat a string to SELECT * MySql

以下查詢適用於MySQL:

SELECT concat(title,'/') FROM `socials` WHERE 1

它Concat /到選定的標題字段。

但是,當我嘗試執行以下操作時:

SELECT concat(*,'/') FROM `socials` WHERE 1

它返回以下錯誤:

 #1064 - You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to use near '*,'/') FROM `socials` WHERE 1 LIMIT 0, 30' at line 1

那么有沒有辦法讓這樣的SQL查詢與MySql一起使用

你根本無法在SQL中做到這一點。 您必須明確列出字段並連接每個字段:

SELECT CONCAT(field1, '/'), CONCAT(field2, '/'), ... FROM `socials` WHERE 1

如果您使用的是應用程序,則可以使用SQL讀取列名稱,然后使用您的應用程序構建如上所述的查詢。 請參閱此stackoverflow問題以查找列名: 在mysql中獲取表列名稱?

如果要使用/作為分隔符連接字段,可以使用concat_ws

select concat_ws('/', col1, col2, col3) from mytable

但是,您無法轉義列出查詢中的列。 * -syntax僅適用於“select * from”。 您可以列出列並動態構造查詢。

您不能使用字符串連接多個字段。 您需要選擇所有( * )的字段instand。

您不能在多個字段上執行此操作。 你也可以尋找這個

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM