如何獲取由MySQL中的逗號分隔的一列項目?獲取由多個值組成的單個列
如果我這樣做select * from (select 1, 2, 3, 4, 5) a;
它給了我5個不同的列,而不是一個名爲(1, 2, 3, 4, 5)
的列。誰能幫我嗎?
如何獲取由MySQL中的逗號分隔的一列項目?獲取由多個值組成的單個列
如果我這樣做select * from (select 1, 2, 3, 4, 5) a;
它給了我5個不同的列,而不是一個名爲(1, 2, 3, 4, 5)
的列。誰能幫我嗎?
這是一種標準的SQL方法。它不使用任何專有功能。
select 1 as n
union all
select 2
union all
select 3
union all
select 4
union all
select 5;
邁克的解決方案是靜態的範圍內最好的一個,但這裏的情況下,MySQL的具體的解決方案,你需要的行數更容易進行調整;
SELECT @row := @row + 1 as row
FROM
(SELECT 0 UNION ALL SELECT 1) t2,
(SELECT 0 UNION ALL SELECT 1) t4,
(SELECT 0 UNION ALL SELECT 1) t8,
(SELECT 0 UNION ALL SELECT 1) t16,
(SELECT @row:=0) a
WHERE @row < 5
這將僅僅通過改變WHERE子句生成多達16行,是容易的,因爲一個額外的選擇將增加一倍的範圍擴大。
您的行數(1-5)是否已修復? –
你想要的值是一個單一的字符串與逗號分隔值? –
(1,2,3,4,5)只是一個例子。我只想要一些值。 – deepak