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--SELECT COUNT(合同号) FROM 订单 AS LiMing WHERE LiMing.合同号<= Chang.合同号 查询小于或等于'009'的合同号记录行!
SELECT 序号= (SELECT COUNT(合同号) FROM 订单 AS LiMing WHERE LiMing.合同号<= Chang.合同号 where LiMing.合同号='009') FROM 订单 AS Chang where 合同号='009' ORDER BY 1里面也应该机上 LiMing.合同号='009' 这个条件吧
SELECT 序号= (SELECT COUNT(合同号) FROM 订单 AS LiMing WHERE LiMing.合同号<= Chang.合同号 and LiMing.合同号='009') FROM 订单 AS Chang where 合同号='009' ORDER BY 1
SELECT 序号= (SELECT COUNT(合同号) FROM 订单 WHERE 合同号<= Chang.合同号) FROM 订单 AS Chang where 合同号='009' ORDER BY 1这样你好理解一些,少一个别名也可以的
查询小于或等于'009'的合同号记录行!
FROM 订单 AS Chang where 合同号='009' ORDER BY 1里面也应该机上 LiMing.合同号='009' 这个条件吧
FROM 订单 AS Chang where 合同号='009' ORDER BY 1
SELECT 序号=
(SELECT COUNT(合同号) FROM 订单 WHERE 合同号<= Chang.合同号)
FROM 订单 AS Chang where 合同号='009' ORDER BY 1这样你好理解一些,少一个别名也可以的
数据量小的时候没有问题,在SQL SERVER 2005+的版本出现了row_number().