分配行排名编号
我有一个数据库。我想更新一个专栏。该列应包含根据另一列的字母顺序升序排列的唯一整数。
抱歉,可能不清楚,我想要像这样的整数:
1 ACC 501
2 BCC 501
3 GCC 601
4 FCC 601
是否有一种相当简单的方法可以使用 mysql 或 sql 查询设置此排名/顺序?
I have a database. I want to update a column of it. The column should contain unique integer numbers in ascending order according to alphabetical order of another column.
Sorry not clear maybe, I want to have integer numbers like this:
1 ACC 501
2 BCC 501
3 GCC 601
4 FCC 601
Is there a reasonably simple way of setting this rank/order with mysql or sql query?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
你需要的是一个排名功能,目前MySQL还不支持。但是,您可以像这样模拟它们:
What you need is a ranking function which is not supported by MySQL at the moment. However, you can simulate them like so:
创建另一个与原始表具有相同架构的表,并添加新列。新列应该是自动编号。对该表执行 INSERT...SELECT。新列将填写您想要的值。
Create another table that has the same schema as your original table, plus the new column. The new column should be an autonumber. Do an INSERT...SELECT into that table. The new column will be filled out with the values you want.
就像亚历克斯所说,你想创建一个新表
,然后插入
我认为你可以快速创建表
Like what Alex said, you want to create a new table like
And then insert with
I think you can quickly do the create table with