SQL Server 2014:如何写Query?
SQL Server 2014: How to write Query?
在我的项目中,我使用的是 SQL Server 2014。我卡在需要以下结果的地方。
我有这些 table 个条目:
预期结果是:
我想在值 = 1 的单行中合并唯一 ID 的行值。
行值将始终为 0 或 1。
我尝试了很多 CASE WHEN
但我无法获得预期的结果。
求推荐。
假设 A
、B
和 C
是一些数字数据类型,您需要这样的东西
select id,
max(A) as A,
max(B) as B,
max(C) as C
from your_table
group by id
如果A
、B
和C
数据类型是bit
则先转换
select id,
max(cast(A as int)) as A,
max(cast(B as int)) as B,
max(cast(C as int)) as C
from your_table
group by id
这应该有效 - 请尝试。
select DISTINCT id,
MAX(A) OVER (PARTITION BY id) A,
MAX(B) OVER (PARTITION BY id) B,
MAX(C) OVER (PARTITION BY id) C
from tableName
在我的项目中,我使用的是 SQL Server 2014。我卡在需要以下结果的地方。
我有这些 table 个条目:
预期结果是:
我想在值 = 1 的单行中合并唯一 ID 的行值。
行值将始终为 0 或 1。
我尝试了很多 CASE WHEN
但我无法获得预期的结果。
求推荐。
假设 A
、B
和 C
是一些数字数据类型,您需要这样的东西
select id,
max(A) as A,
max(B) as B,
max(C) as C
from your_table
group by id
如果A
、B
和C
数据类型是bit
则先转换
select id,
max(cast(A as int)) as A,
max(cast(B as int)) as B,
max(cast(C as int)) as C
from your_table
group by id
这应该有效 - 请尝试。
select DISTINCT id,
MAX(A) OVER (PARTITION BY id) A,
MAX(B) OVER (PARTITION BY id) B,
MAX(C) OVER (PARTITION BY id) C
from tableName