这个SQL 该怎么写?(50分)

  • 主题发起人 主题发起人 xww
  • 开始时间 开始时间
你把你那二个table的几个重要字段及内容列出来给我看看
我看看是不是有其他办法
 
SELECT XA0101,XA0102,GC0102
FROM XA01,GC01
WHERE (XA0109*=GC0101) and GC0102='男'
 
view好象在outer join时有bug:-(
 
cytown:
>>WHERE (XA0109*=GC0101) and GC0102='男'
我建立View的目的是方便查询,你以上的条件虽然可行,但只能查出'男'
的记录,而我还希望在其上(View)进行复杂的查询.
各位可知,如何写这个View?
 
xww, 你可以在f3的初值上做文章, 让他不为null就可以了, 如'未知'...
这样outer join就不会再有bug了.
 
cytown:
>>xww, 你可以在f3的初值上做文章, 让他不为null就可以了, 如'未知'...
这样outer join就不会再有bug了.
你的方法我试过了,比如让f3全为'男‘,但在做查询:
select * from xa01_v where f3='女'
时,出现的结果为:
F1 F2 F3
01 001 null
02 002 NULL
03 003 null
04 004 NULL
注意: f3全为:'男'.
请您试以下可是上述结果?

 
呵呵, 我说错了, 是GC0102的初值. 另外, 改变table结构, 相关的view要重建.
 
在建立外连接的View上,难道就没有办法实现我所说的上面的查询了吗?
这是否SQL SERVER 的一个BUG?
各位有无更好的办法?(我是指允许f3为NULL)
 
难道就没有对这个问题的最佳解答吗?这是SQL SERVER7的一个BUG吗?
 
我想, 应该是bug, 最佳解答就是gc0102的输入值不能为空.
 
呜呼,SQL SERVER7真的这么菜?此题无解!?
 
各位:
请发表意见,我在等正确的解答呢!
 
虽然我没用过 sql server 7。0 但我看了大家的讨论。我觉得:1 。你的系统最
好重装一下。2 就是我看你的 sql 有这样的问题:WHERE (XA0109*=GC0101) 这
样的数据均被显示了出来。这与 select * from xa01_v where F3='男' 的 where
控制语句并列的。可不可 先给 GC0102 赋一个值 例如 男。或是 未知
 
多人接受答案了。
 
后退
顶部