【问题标题】:return mySQL original row number返回 mySQL 原始行号
【发布时间】:2011-12-22 17:12:21
【问题描述】:

我想获取数据库中原始记录的row_number。有没有办法在mysql中检索记录的原始行号? 假设我的陈述是

select course_id from course where subject='finance';

此查询可以有多个记录。假设它们来自第 4、5、7、9 和 10 行。如何从我的查询中检索这些 row_numbers?

【问题讨论】:

  • 大多数 SQL 数据库中没有实际的“行号”。如果您需要跟踪添加行的顺序,您需要自己分配一个顺序 ID 或插入完成时设置的日期列。
  • $num = $mysql_num_rows($res); for ($i=0;$i
  • 我的回答解决了您的问题@codingNewbie 还是您需要更多帮助?
  • 我只是使用了一个简单的更新语句,我意识到我不需要检索行号。我不想创建排名。非常感谢您的帮助:)

标签: mysql row row-number


【解决方案1】:

检查:With MySQL, how can I generate a column containing the record index in a table?

SELECT  c.course_id, 
        @curRow := @curRow + 1 AS row_number
FROM    course c
JOIN    (SELECT @curRow := 0) r;

但是请注意,这是人为的,因为唯一真正的“行号”将是您自己的主 ID,并且当您更改 ORDER 子句时,每个人为的方法都会更改行号

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    相关资源
    最近更新 更多