如何将(未知)行数分组为由设置的列确定分组的单行?
例如,换档
Ref Name Link
==============================
1 John L1
1 John L2
1 John L8
2 Steve L1
2 Steve L234
进入
Ref Name ... ... ...
==========================================
1 John L1 L2 L8
2 Steve L1 L234 NULL
谢谢你的帮助
您可以使用row_number()作为列名称的源来透视表:
select *
from
(
select ref,
name,
link,
row_number() over (partition by ref, name order by link) rn
from table1
) s
pivot (min (link) for rn in ([1], [2], [3], [4])) pvt
如果您有更多的行,只需扩展数字列表即可。
实时测试是@Sql Fiddle。
问题内容: 我正在尝试将一些数据汇总为一个报告,并且需要连接表之一的行值。这是基本的表结构: 评论 审稿人 用户数 这是M:M关系。每个审阅可以有许多审阅者;每个用户可以与许多评论相关联。 基本上,我要查看的是Reviews.ReviewID,Reviews.ReviewDate和该评论的所有关联用户的FName的串联字符串(以逗号分隔)。 代替: 显示此: 我发现这个文章描述了一些方法可以做到这
问题内容: 我有下表 我需要编写一个查询,该查询将返回不同的ID和对应的Number列值相乘。对于给定的表结果应该是这样的 (不使用游标) 问题答案: 这将适用于正数,也可以乘以负数,也可以使用ABS()函数使用绝对(正)值,但最终结果将是正数,而不是负数: 编辑:添加了测试脚本 输出:
问题内容: 我想在日期基础上更新一行。问题是,由于我的错误,我有两行相同的数据。如何仅在一行上运行更新? 问题答案: 表通常具有唯一的ID。您应该对此进行过滤。 例如, 如果您的表没有唯一的ID,请考虑添加一个:带有和的列。
问题内容: 我该如何选择: 请不要告诉我可以使用,因为它们实际上来自查询。 问题答案: 没有合并和语法,但是您可以使用,如下所示。 或在评论中使用您的示例
MS SQL 有许多用于处理数字数据或字符串的内置函数。下面给出的列表包含有用的 SQL 内置函数: SQL Server COUNT 函数 - SQL Server COUNT 聚合函数用于计算数据库表中的行数。 SQL Server Max 函数 - SQL 中的 Max Aggregate 函数允许我们选择列的最大值。 SQL Server Min 函数 - SQL 中的 Min Aggre
主要内容:CREATE INDEX命令,删除索引命令索引是数据库搜索引擎用来加速数据检索的唯一表格。索引是表中数据的一种指标。数据库中的索引与书末的索引相同。 例如,如果想参考书中讨论某个主题的所有页面,首先参考索引,索引一般是按字母顺序列出所有问题,然后应用于一个或多个页码。 索引选择可以帮助我们加快 where 子句出现时的查询速度,但它会减慢数据输入速度,并且包含更新和语句。不会对索引数据产生或删除任何影响。 创建索引包括一个 语句,该语句为