如以下四张表:A:SALE_DETAIL
B:ITEM_INFO
C: SALE_MASTER
D:ITEM_CLASS 先拿到SALE_MASTER里对应的查询的时间段里的SALE_ID
在去查SALE_DETAIL里对于的SALE_ID对应的ITEM_ID
然后再去ITEM_INFO表里查这个ITEM_ID对应的CLASS_ID
然后再去ITEM_CLASS表里查这个CLASS_ID对应的CLASS_ID,CLASS_NAME要求显示四列 D.CLASS_CODE,D.CLASS_NAME,sum(A.ITEM_QTY),sum(A.ITEM_PAY_MONEY)我写的SQL在SQLITE里可以运行。在MYSQL里无数据显示。
SELECT D.CLASS_CODE,D.CLASS_NAME,sum(A.ITEM_QTY),sum(A.ITEM_PAY_MONEY) FROM SALE_DETAIL A,ITEM_INFO B,SALE_MASTER C ,ITEM_CLASS D WHERE D.CLASS_CODE=B.CLASS_CODE AND A.SALE_ID=C.SALE_ID AND A.ITEM_ID=B.ITEM_CODE AND C.SALE_DATE>='20130520' AND C.SALE_DATE<='20130522' AND A.SALE_TYPE NOT IN ('1','4') AND C.STORE_ID='1' GROUP BY D.CLASS_CODE ;求教!!!!!
B:ITEM_INFO
C: SALE_MASTER
D:ITEM_CLASS 先拿到SALE_MASTER里对应的查询的时间段里的SALE_ID
在去查SALE_DETAIL里对于的SALE_ID对应的ITEM_ID
然后再去ITEM_INFO表里查这个ITEM_ID对应的CLASS_ID
然后再去ITEM_CLASS表里查这个CLASS_ID对应的CLASS_ID,CLASS_NAME要求显示四列 D.CLASS_CODE,D.CLASS_NAME,sum(A.ITEM_QTY),sum(A.ITEM_PAY_MONEY)我写的SQL在SQLITE里可以运行。在MYSQL里无数据显示。
SELECT D.CLASS_CODE,D.CLASS_NAME,sum(A.ITEM_QTY),sum(A.ITEM_PAY_MONEY) FROM SALE_DETAIL A,ITEM_INFO B,SALE_MASTER C ,ITEM_CLASS D WHERE D.CLASS_CODE=B.CLASS_CODE AND A.SALE_ID=C.SALE_ID AND A.ITEM_ID=B.ITEM_CODE AND C.SALE_DATE>='20130520' AND C.SALE_DATE<='20130522' AND A.SALE_TYPE NOT IN ('1','4') AND C.STORE_ID='1' GROUP BY D.CLASS_CODE ;求教!!!!!
FROM SALE_DETAIL A,ITEM_INFO B,SALE_MASTER C ,ITEM_CLASS D
WHERE D.CLASS_CODE=B.CLASS_CODE
AND A.SALE_ID=C.SALE_ID
AND A.ITEM_ID=B.ITEM_CODE
AND C.SALE_DATE>='20130520'
AND C.SALE_DATE<='20130522'
AND A.SALE_TYPE NOT IN ('1','4')
AND C.STORE_ID='1'
GROUP BY D.CLASS_CODE,D.CLASS_NAME;
sum(A.ITEM_QTY),sum(A.ITEM_PAY_MONEY) FROM SALE_DETAIL A,ITEM_INFO B,SALE_MASTER C ,ITEM_CLASS D
WHERE D.CLASS_CODE=B.CLASS_CODE AND A.SALE_ID=C.SALE_ID
AND A.ITEM_ID=B.ITEM_CODE AND C.SALE_DATE>='20130520'
AND C.SALE_DATE<='20130522' AND A.SALE_TYPE NOT IN ('1','4')
AND C.STORE_ID='1' GROUP BY D.CLASS_CODE ,D.CLASS_NAME;
A.ITEM_ID=B.ITEM_CODE INNER JOIN SALE_MASTER C ON A.SALE_ID=C.SALE_ID AND C.SALE_DATE>='20130520' AND C.SALE_DATE<='20130522' AND A.SALE_TYPE NOT IN ('1','4') AND C.STORE_ID='1' INNER JOIN ITEM_CLASS D ON D.CLASS_CODE=B.CLASS_CODE GROUP BY C.SALE_ID,D.CLASS_CODE ;为什么查到的都是Empty set;数据肯定是有的,而且是正常的,但是就是查不到我想要的。
参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。