方法一:使用where子句和or邏輯判斷
根據定義,滿足下面的其中乙個條件:
條件1:面積超過300萬
條件2:人口超過2500萬
先使用下面語句獲得滿足條件1的大國家:
select name, population, area from world where area >
3000000
;
然後使用下面的語句獲得滿足條件2的國家
select name, population, area from world where population >
25000000
;
使用or語句將子查詢的結果合併在一起
select name, population, area from world where area >
3000000
or population >
2500000
;
這個方法思路和第乙個一樣,但是需要使用uniion連線子查詢結果
select name, population, area from world where area >
3000000
union
select name, population, area from world where population >
25000000
;
雖然第二個方法的執行速度更加快,但是沒有太大的差別
union操作符
union操作符是用於合併兩個或者多個select語句的結果集合,但是要注意,union內部的每個select語句必須擁有相同數量的列,列也必須擁有相似的資料型別,同時每個select語句中的列的順序必須相同。
union的語法
這個操作符預設是選取不同的值,如果允許重複的值,請使用union all
union all語法
union結果集合中的列名總是等於union中的第乙個select語句中的列名
拓展:如果上訴結果和where子句結合
例子:如果想要選取所有中國(cn)的資料(也會包含重複的值):
參考連線:
SQL每日刷題 條件判斷
給定乙個 salary 表,如下所示,有 m 男性 和 f 女性 的值。交換所有的 f 和 m 值 例如,將所有 f 值更改為 m,反之亦然 要求只使用乙個更新 update 語句,並且沒有中間的臨時表。注意,您必只能寫乙個 update 語句,請不要編寫任何 select 語句。例如 idname...
linux查詢符合條件的檔案並刪除
找到根目錄下所有的以test開頭的檔案並把查詢結果當做引數傳給rm rf命令進行刪除 1 find name test xargs rm rf 2 find name test exec rm rf 3 rm rf find name test 如果想指定遞迴深度,可以這樣 1 find maxde...
linux查詢符合條件的檔案並刪除
找到根目錄下所有的以test開頭的檔案並把查詢結果當做引數傳給rm rf命令進行刪除 1 find name test xargs rm rf 2 find name test exec rm rf 3 rm rf find name test 如果想指定遞迴深度,可以這樣 1 find maxde...