select * from 表 where name in (select name2 from 表)
select * from 表 where name like '張%'
通過上面的例子可以看出:
第一個 name in 后面是一個查詢,查詢出是一組數(shù)據(jù),比如name2里查詢結果是:'張三','李四','王五','趙六'
那么就查詢出表內name包含了 '張三','李四','王五','趙六'的項目
第二個 name like '張%'
like 表示模糊查詢
里面包含了通配符%
%代替任意N個字符
還有通配符:單個下橫杠: _
_表示任意一個字符
也就是:查詢name like '張%' 是查詢結果里必須滿足所有'張'字開頭的數(shù)據(jù),'張三','張四',張五','張XX','張XXX','張XXXXXXX'
都滿足條件
如果用通配符name like '張_'查詢name 里包含了所有'張'字開頭的后面跟一個字符的數(shù)據(jù),,'張三','張四',張五','張XX','張XXX','張XXXXXXX'
職能顯示'張三','張四',張五'
而'張XX','張XXX','張XXXXXXX'就不滿足條件