第五課 高階資料過濾
回顧與預習
第四課學習了如何用select語句的where子句過濾返回的資料:如何檢驗相等、不相等、大於、小於、值的範圍以及null值等;第五課學習如何組合where子句以建立功能更強、更高階的搜尋條件以及學習如何使用not和in操作符。
5.1組合where子句
sql允許給出多個where子句,以and子句或or子句的方式使用,and等操作符(operator)用來聯結或改變where子句中的子句的關鍵字,也稱為邏輯操作符(logical operator)。
5.1.1、 and操作符and
---用在where子句中的關鍵字,用來指示檢索滿足所有給定條件的行。
輸入▼select prod_id, prod_price, prod_name
from products
where vend_id ='dll01' and prod_price <= 4;
---檢索由**商dll01製造且**小於等於4美元的所有產品的名稱和**。
5.1.2、or操作符
---指示dbms檢索匹配任一條件的行。
輸入▼select prod_name, prod_price
from products
where vend_id ='dll01' or vend_id = 『brs01』;
---檢索由任乙個指定**商製造的所有產品的產品名和**
5.1.3、 求值順序
where子句可以包含任意數目的and和or操作符。允許兩者結合以進行複雜、高階的過濾。
輸入▼select prod_name, prod_price
from products
where vend_id ='dll01' or vend_id = 『brs01』
andprod_price >= 10;---改進 where(vend_id = 'dll01' or vend_id = 『brs01』)and prod_price >= 10;
在處理or操作符前,優先處理and操作符,解決辦法使用圓括號對操作符進行明確分組。
!!任何時候使用具有
and和
or操作符的
where
子句,都應該使用圓括號明確地分組操作符。不要過分依賴預設求值順序,即使它確實如你希望的那樣。使用圓括號沒有什麼壞處,它能消除歧義。!!
5.2、in操作符
in操作符用來指定條件範圍,範圍中的每個條件都可以進行匹配。in取一組由逗號分隔、括在圓括號中的合法值。
輸入▼select prod_name, prod_price
from products
where vend_id in ('dll01', 'brs01' )
orderby prod_name;---檢索由**商dll01和brs01製造的所有產品。
in操作符完成了與
or相同的功能
輸入▼select prod_name, prod_price
from products
where vend_id ='dll01' or vend_id = 'brs01'
order by prod_name;
in操作符?其優點為:
在有很多合法選項時,in操作符的語法更清楚,更直觀。
在與其他and和or操作符組合使用in時,求值順序更容易管理。
in操作符一般比一組or操作符執行得更快
in的最大優點是可以包含其他
select
語句,能夠更動態地建立
where
子句。
in―――
where
子句中用來指定要匹配值的清單的關鍵字,功能與
or相當。
5.3、not操作符
否定其後所跟的任何條件。
輸入▼select prod_name
from products
where not vend_id ='dll01'
order by prod_name;--- 列出除dll01之外的所有**商製造的產品
<>操作符來完成
輸入▼select prod_name
from products
where vend_id <>'dll01'
order by prod_name;
Django 第五課 過濾器
為什麼需要過濾器 因為在dtl中,不支援函式的呼叫形式 因此不能給函式傳遞引數,這將有很大的侷限性。而過濾器其實就是乙個函式,可以對需要處理的引數進行處理,並且還可以額外置收乙個引數 也就是說,最多2個引數 在模板中,有時候需要對一些資料進行處理以後才能使用。一般在python中我們是通過函式函式的...
第五課 文法
1.名詞 場所 行 來 帰 使用移動動詞時,移動的方向用助詞 表示。京都 行 我要去京都。日本 來 我來到了日本。帰 我要回家。注 助詞 讀作 2.行 行 完全否定疑問詞所問的全部範疇時,用助詞 與否定形式一起使用。行 也不去。何 食 什麼也不吃。第6課 沒有任何人在。第10課 3.名詞 交通工具 ...
C語言第五課
主要內容 二維陣列 字串陣列 多維陣列 理解 一 二維陣列 有兩個下標的陣列稱為二維陣列 定義 型別修飾符 陣列名 常量表示式1 常量表示式2 第一維的長度 第二維的長度 示例 定義乙個2行3列的二維陣列 int array 2 3 這是乙個標準的二維陣列 二維陣列的元素也稱為雙下標變數 0 1 2...