Excel零基礎(chǔ)學SQL05:比較運算符,where子句
where子句是常常用到的條件篩選語句,類似于Excel中的篩選和高級篩選。
where子句常常和比較運算符一起使用,常用的比較運算符有等于=,大于>,小于<>,小于等于<=,大于等于>=。
1、提取【d】字段數(shù)值大于80的所有數(shù)據(jù)。
select * from [Sheet1$] where d >80
2、提取【d】字段小于90的所有數(shù)據(jù)。
select * from [Sheet1$] where d
3、提取【c】字段等于'test'的所有數(shù)據(jù)
select * from [Sheet1$] where c ="test"
文本條件要加上雙引號或者單引號。
select * from [Sheet1$] where c ='test' 語句得出同樣結(jié)果。
一般情況下,字母不區(qū)分大小寫。
select * from [Sheet1$] where c ='TEST'
4、提取【c】不為test的所有數(shù)據(jù)。
select * from [Sheet1$] where c <>'TEST'
5、注意數(shù)字的格式。
文本型數(shù)字和數(shù)值型數(shù)字,在where后寫的條件不同。
文本型的數(shù)字需要加雙引號或者單引號,而數(shù)值型的數(shù)字不需要。
如上面的數(shù)據(jù)源中,數(shù)字都是文本。使用
select * from [Sheet1$] where d >80
將會產(chǎn)生錯誤,在【命令類型】下拉框中選中SQL,然后點擊確定,會有錯誤提示:
將80加上雙引號或者單引號,同樣可以查詢到數(shù)據(jù):
select * from [Sheet1$] where d >'80'
這種做法無疑是有坑的,文本雖然也可以比較大小,但終究不如數(shù)值方便。(更深層的原因我不知道哇,知道也解釋不清楚哇),處理方法就是將【d】字段都改為數(shù)值型或者將條件中的文本型數(shù)字用函數(shù)或其他方法轉(zhuǎn)為數(shù)值型數(shù)字。