关于网友提出的“ SQL UNION 排序问题,在线等”问题疑问,本网通过在网上对“ SQL UNION 排序问题,在线等”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: SQL UNION 排序问题,在线等
描述: 我现有一表名为: product1,字段内容如下:
productID productName price num
101 商品1 2.15 2
112 商品2 5.5 5
203 商品3 4.15 8
101 商品1 2.15 5
一个表为product2,字段内容如下:
code name fyprice fynum
110 物品1 5 2
123 物品2 4 5
241 物品3 8 8
110 物品1 5 5
我现在要求在报表中显示打印为
产品号 产品名 单价 数量 小计
101 商品1 2.15 7 15.05
112 商品2 5.5 5 27.5
203 商品3 4.15 8 33.2
110 物品1 5 7 35
123 物品2 4 5 20
241 物品3 8 8 64
意思也就是,希望用了UNION进行合并后记录排序能做到product1的记录在一起并按productID 排序,然后是product2的记录在一起,并按code排序。
目前我用UNION连接起来是同意按产品号排序的。结果类似于
产品号 ...
101 ...
110 ...
112 ...
123 ...
203 ...
241 ...
请问如何实现我的要求并在报表中显示并打印呀。
解决后结帖。
谢谢!
解决方案1: 楼主可以揭贴了!
呵呵
解决方案2: SELECT *
FROM (SELECT productID AS 产品号, productName AS 产品名, price AS 单价, SUM(num) AS 数量, price * SUM(num) AS 小计
FROM product1
GROUP BY productID, productName, price
UNION
SELECT code AS 产品号, name AS 产品名, fyprice AS 单价, SUM(fynum) AS 数量, fyprice * SUM(fynum) AS 小计
FROM product2
GROUP BY code, name, fyprice)
ORDER BY 产品号
以上介绍了“ SQL UNION 排序问题,在线等”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2702154.html