![](/img/trans.png)
[英]How can I write a SQL query which ensures two columns are independently unique?
[英]my sql query to find sort two columns independently
有一个表有两列,说id和name,我希望这两列都被排序。
table : id name 3 y 2 z 1 x output should be id name 1 x 2 y 3 z
任何人都可以在单个sql查询中完成吗?
您需要做一些奇怪的事情。 因为你想做的很奇怪。
select b1.id, b2.name from
(
select @row := @row +1 as row, id
from broken, (select @row := 0) rr
order by id asc
) b1
inner join
(
select @row2 := @row2 + 1 as row, name
from broken, (select @row2 := 0) rr
order by name asc
) b2
on b1.row = b2.row
Select *
, row_number() over (order by ID) as IDRow
, row_number() over (order by name) as NameRow
into #temp
from table
select a.ID, b.Name from #temp a
full outer join #temp b
on a.IDRow = b.NameRow
order by IDRow, NameRow
如果需要,可以使用子查询代替temp表来执行此操作,但是这样可能会更快。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.