[英]Multiple rows into single column
嘗試使用透視邏輯。 在這種情況下,我們要忽略值Unknown
,因此下面的CASE
表達式將其賦值為NULL
, SUM
會忽略它。
SELECT
ID,
MAX(CASE WHEN Item1 = 'Unknown' THEN NULL ELSE Item1 END) AS Item1,
MAX(CASE WHEN Item2 = 'Unknown' THEN NULL ELSE Item2 END) AS Item2,
MAX(CASE WHEN Item3 = 'Unknown' THEN NULL ELSE Item3 END) AS Item3,
MAX(CASE WHEN Item4 = 'Unknown' THEN NULL ELSE Item4 END) AS Item4,
MAX(CASE WHEN Item5 = 'Unknown' THEN NULL ELSE Item5 END) AS Item5,
MAX(CASE WHEN Item6 = 'Unknown' THEN NULL ELSE Item6 END) AS Item6
FROM yourTable
GROUP BY
ID;
使用TRY_CAST將值轉換為數字。 如果無法轉換值,則TRY_CAST返回NULL。
SELECT ID,
MAX(TRY_CAST(Item1 as INT)) AS Item1,
MAX(TRY_CAST(Item2 as INT)) AS Item2,
MAX(TRY_CAST(Item3 as INT)) AS Item3,
MAX(TRY_CAST(Item4 as INT)) AS Item4,
MAX(TRY_CAST(Item5 as INT)) AS Item5,
MAX(TRY_CAST(Item6 as INT)) AS Item6
FROM Sample_Table WITH(NOLOCK)
GROUP BY ID;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.