日期:2014-05-18  浏览次数:20545 次

SELECT 查询结果额外增加自动递增序号?
SQL code

SELECT 序号= (SELECT COUNT(合同号) FROM 订单 AS LiMing WHERE LiMing.合同号<= Chang.合同号) FROM 订单 AS Chang where 合同号='009' ORDER BY 1



这个查询实现了在订单表中查找合同号为“009”记录所在的顺序号。
不过这个语句我看不懂,能否详细的解释下。
这里的别名LiMing,Chang都是什么关系?

------解决方案--------------------
SELECT 序号= (SELECT COUNT(合同号) FROM 订单 AS LiMing WHERE LiMing.合同号<= Chang.合同号) FROM 订单 AS Chang where 合同号='009' ORDER BY 1


SQL code

--SELECT COUNT(合同号) FROM 订单 AS LiMing WHERE LiMing.合同号<= Chang.合同号
查询小于或等于'009'的合同号记录行!

------解决方案--------------------
SQL code
SELECT 序号= (SELECT COUNT(合同号) FROM 订单 AS LiMing WHERE LiMing.合同号<= Chang.合同号  where LiMing.合同号='009') 
FROM 订单 AS Chang where 合同号='009' ORDER BY 1

------解决方案--------------------
SQL code

SELECT 序号= 
(SELECT COUNT(合同号) FROM 订单 WHERE 合同号<= Chang.合同号) 
FROM 订单 AS Chang where 合同号='009' ORDER BY 1

------解决方案--------------------
这序号很蛋疼,还是在应用程序段解决的比较好