avatar
How to write this query# Database - 数据库
l*u
1
OrderNo lineNo Status LineType Date1 Date2
1 0001 99 T 07092002(date1)
1 0002 99 S 07012002(date2)
1 0003 50 S
2 0001 99 S 07012002(date2)
2 0002 99 S 07012002(date2)
3 0001 50 T 07092002(date1)
3 0002 99 S 0
avatar
t*g
2
用两个not in在你的where clause里面应该可以作出来





【在 l********u 的大作中提到】
: OrderNo lineNo Status LineType Date1 Date2
: 1 0001 99 T 07092002(date1)
: 1 0002 99 S 07012002(date2)
: 1 0003 50 S
: 2 0001 99 S 07012002(date2)
: 2 0002 99 S 07012002(date2)
: 3 0001 50 T 07092002(date1)
: 3 0002 99 S 0

avatar
x*e
3
"in" is OK, "not in" is not efficient.
avatar
c*n
4
2 LEFF JOIN
avatar
B*g
5
***Ban Er Zhuan is welcome***
1. why orderno 3 is in 08/30/02--09/10/02?
2.please provide database structure and index for a better solution
3. my sql statemnt (change date to 06/30/02--09/10/02)
SELECT *
FROM TBL t1
WHERE NOT EXISTS ( SELECT 1
FROM TBL t2
WHERE t2.OrderNo = t1.OrderNo
AND (
(((t2.Status != 99) OR (t2.Status IS NULL))
AND ((t2.LineType != 'T') OR (t2.LineType IS NULL)))


【在 l********u 的大作中提到】
: OrderNo lineNo Status LineType Date1 Date2
: 1 0001 99 T 07092002(date1)
: 1 0002 99 S 07012002(date2)
: 1 0003 50 S
: 2 0001 99 S 07012002(date2)
: 2 0002 99 S 07012002(date2)
: 3 0001 50 T 07092002(date1)
: 3 0002 99 S 0

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。