首页新闻找找看学习计划

一个简单的SQL语句,求指导……

0
悬赏园豆:5 [已解决问题] 解决于 2013-01-25 17:43

如下图,要从同一个

表输入主或副卡卡号中找出主卡卡号……

但是同一个表查了2次好像效率不好,请问有哪种方法可能写得更好?

hexllo的主页 hexllo | 菜鸟二级 | 园豆:405
提问于:2012-12-18 13:11
< >
分享
最佳答案
0

select cardNum from localcardnum as a

join

localcardnum as b

on a.customerID=b.customerID

where a.ParentCard=0 and b.CardNum='xxxxxx'

hexllo | 菜鸟二级 |园豆:405 | 2012-12-19 14:57
其他回答(4)
0

假设输入的主卡或副卡号为:XXXXX

自连接试一下:

select A.cardNum from localcardnum A ,localcardnum B

where (A.cardNum='XXXXX' and ParentCard=0)

   or ( B.cardNum='XXXXX' and  A.CustomerId = B.ParentCard )

jzzlo | 园豆:282 (菜鸟二级) | 2012-12-18 13:24
0

用sql server的执行计划分析一下你的sql语句,看看主要的花销是在哪个方面

收获园豆:5
chenping2008 | 园豆:9836 (大侠五级) | 2012-12-18 13:36
0

where cardnum='XXX' or parentCard='XXX'

清海扬波 | 园豆:847 (小虾三级) | 2012-12-18 14:45
0

select (case ParentCard when 0 then CustomerId else ParentCard end) as CustomerId from localcardnum where cardnum ='XXX'

茂茂 | 园豆:2860 (老鸟四级) | 2012-12-18 16:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册