首页 > 解决方案 > 如何将行号分配给我在 MySQL 中查询的表?

问题描述

看起来很简单,但我找不到任何适合我的解决方案。我的查询如下所示:

SELECT DISTINCT bedType FROM room;

结果显示:

  bedType
  King Bed
  Queen Bed

我试图只分配数值,例如:

  bedType
1 King Bed
2 Queen Bed

我尝试使用row_number()但没有用。有没有一种简单的方法可以做到这一点?先感谢您!

++

SELECT DISTINCT bedType, ROW_NUMBER() OVER (ORDER BY bedType) FROM room;

这导致:

bedType ROW_NUMBER() OVER (ORDER BY bedType)
King Bed    1
King Bed    2
King Bed    3
King Bed    4
King Bed    5 
... 
...

标签: mysqlsql

解决方案


您可以row_number()用作:

select row_number() over (order by bedtype), bedtype
from room
group by bedtype

推荐阅读