mysql 在查询的结果中增加一行标记序号的伪列
我想在取出的数据中增加一列,把取出的数据按顺序排1,2,3,4,5...,我看有的写法是
set @rn=0;
select @rn:=@rn+1 as rn,m.name,m.code,count(t.key_tech_name) sl from tech_field_code m,data_all t
where t.PRO_TECH_FIELD=m.CODE group BY m.name ORDER BY sl desc,m.code limit 0, 10
但是这样取出来的数据 rn列并不是我想要的结果,而是12,3,1,30,4,13...一些乱七八糟的数,是不是哪理解错了,指点下,谢谢。
set @rn=0;
select @rn:=@rn+1 as rn,m.name,m.code,count(t.key_tech_name) sl from tech_field_code m,data_all t
where t.PRO_TECH_FIELD=m.CODE group BY m.name ORDER BY sl desc,m.code limit 0, 10
但是这样取出来的数据 rn列并不是我想要的结果,而是12,3,1,30,4,13...一些乱七八糟的数,是不是哪理解错了,指点下,谢谢。
...全文
相关推荐
MYSQL如何自动为查询数据的结果编上序号详解
在查询过程中,`@i:=@i+1` 表达式使得`@i`的值在每次选择一行时增加1,从而生成一个序列号。`AS '序号'` 是为这个新的列命名,使其更易读。
mysql如何实现多行查询结果合并成一行
如果需要更长的结果,可以通过设置 `group_concat_max_len` 系统变量来增加限制。
SQL为查询的结果加上序号(ROW_NUMBER) 合并多个查询结果
在SQL查询中,有时我们需要为结果集中的每一行添加一个唯一的序号,以便于管理和展示数据。这通常可以通过使用窗口函数ROW_NUMBER()来实现。ROW_NUMBER()是SQL标准的一部分,允许我们
Mysql 集合运算,伪列,开窗函数及示例代码
"Mysql 集合运算,伪列,开窗函数及示例代码"MySQL中的集合运算主要包括并集(Union),但在标准SQL中常见的交集(Intersect)和差集(Except)在MySQL中并未直接实
oracle数据库伪列简单介绍
#### 三、rownum与rowid的区别通过上面的介绍可以看出,虽然rownum和rowid都是Oracle数据库中的伪列,但它们之间存在着本质的不同:- **含义不同**:rownum表示查询结果集中的行序号


