自己闲着弄的,写下来记录一下。
网上很多都是2个语句的。我自己想一个语句。测试后,在我的机器上运行成功。
首先是网上查到的。
select @a:=1
;
select @a:=@a+1 as rowid, invoiceid from invoices where invoiceid<1000 and price <20
我自己想一句写出来。不想分开语句。
select @a:=@a+1 as rowid, invoiceid from invoices where (select @a:=1) or (invoiceid<1000 and price <20)
我没有考虑过性能,因为我那个表是没有什么内容的。
本文介绍了一种使用单条SQL语句实现复杂查询的方法。作者对比了常见的两步查询方式,提供了一个新颖的一次性查询解决方案,适用于小型数据集。该方法通过自定义变量在同一个SELECT语句中实现了计数和条件过滤。
694

被折叠的 条评论
为什么被折叠?



