我有一个包含2列的表格,如下所示:
var manualSort = days.sort(function(a, b) {
return moment(new Date(a.start)).format() > moment(new Date(b.start)).format();
});
var underScoreSort = _.sortBy(days, function(a) {
return moment(new Date(a.start)).format();
});
我是通过使用city_name car_name
Gurgaon Alto
Gurgaon Mercedez Benz
Gurgaon Swift Dzire
New Delhi Alto
New Delhi Etios
New Delhi Mercedez Benz
New Delhi Swift Dzire
标记运行查询来实现的,但我的任务是显示一个包含非重复条目的表。即我想显示这样的表:
group by
我正在使用Microsoft SQL Server Management Studio 2014
答案 0 :(得分:2)
这应该在前端/报告工具中完成,而不是使用sql。如果您没有选择,请尝试此
select case when sno=1 then city_name else '' end as city_name,car_name from
(
select row_number() over (partition by city_name order by car_name) as sno, * from table
) as t
答案 1 :(得分:0)
select city_name, (SELECT [car_name]+','
FROM [myTable] AS [t1]
WHERE t1.[city_name] = t2.[city_name]
FOR XML PATH('') ) AS cars
FROM [MyTable] AS [t2]
GROUP BY [t2].[city_name]
您可以使用显示媒体中的换行符替换(或任何其他可能使用的字符串)。
答案 2 :(得分:0)
您可以使用以下代码:
;with CTE as
(
select row_number() over (partition by city_name order by car_name) as rn, * from table
)
Update CTE
set city_name=' '
where rn > 1
您可以在此处更新同一个表格。无需创建临时表/中间表。