首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

一个关于sql select有关问题

2013-01-28 
一个关于sqlselect问题列一列二列三001王五002张六003孙上001004张起001我想用select得出列三中包涵列一的

一个关于sql select问题
列一    列二    列三
001     王五    
002     张六
003     孙上    001
004     张起    001


我想用select得出列三中包涵列一的数据,比如
001     王五    
003     孙上    001
004     张起    001

我是这样写的。
select * from TABLE where 列一=列三

这样貌似得出来是空。怎么弄?
[解决办法]
SELECT A.*
FROM TAB A 
WHERE 列三 <> ''
OR EXISTS (
SELECT 1
FROM TAB B
WHERE B.列三 = A.列一
)

[解决办法]

引用:
SELECT A.*
FROM TAB A 
WHERE 列三 <> ''
OR EXISTS (
SELECT 1
FROM TAB B
WHERE B.列三 = A.列一
)


正解!!!
[解决办法]
我觉得应该是
SELECT * FROM t_TEST_A WHERE c1 IN (SELECT C3 FROM t_TEST_A)
union
(
SELECT * FROM t_TEST_A WHERE c3 IN (SELECT C1 FROM t_TEST_A)
)
用楼上的语句会丢失第一条

热点排行