慕田峪7331174
2019-08-31 15:30:25
我需要運行如下查詢:SELECT p.id, p.name, (SELECT name FROM sites s WHERE s.id = p.site_id) AS site_list FROM publications p但我希望子選擇返回逗號分隔列表,而不是一列數據。這是否可能,如果是這樣,怎么樣?
3 回答

慕沐林林
TA貢獻2016條經驗 獲得超9個贊
而不是使用group concat()你可以使用concat()
Select concat(Col1, ',', Col2) as Foo_Bar from Table1;
編輯它只適用于mySQL; Oracle concat只接受兩個參數。在oracle中,您可以使用select col1 ||','|| col2 ||','|| col3之類的東西作為來自table1的foobar; 在SQL Server中你會使用+而不是管道。

九州編程
TA貢獻1785條經驗 獲得超4個贊
在我的情況下,我必須連接一個人的手機號碼唯一的帳號。所以我使用以下查詢來實現這一點。
SELECT GROUP_CONCAT(AccountsNo) as Accounts FROM `tblaccounts` GROUP BY MobileNumber
查詢結果如下:
Accounts
93348001,97530801,93348001,97530801
89663501
62630701
6227895144840002
60070021
60070020
60070019
60070018
60070017
60070016
60070015
添加回答
舉報
0/150
提交
取消