編寫sql查詢的3種寫法

2022-09-19 14:45:09 字數 1009 閱讀 6667

舉例

table1

id, 主鍵自增

state 狀態

table2

id, 主鍵自增

table1id table1的外來鍵

name

要求:要查詢所有table1狀態為1對應table2中name資訊

第一種寫法

select

table2.name

from

table1,

table2

where table1.id =

table2.table1id

and table1.state =

1

第二種寫法 

select

table2.name

from

(select

id

from

table1

where table1.state =

1) table1,

tbale2

where tbale1.id = table2.table1id

第三種寫法

;with

table3

as (select

id

from

table1

where table1.state =1)

select

table2.name

from

table2,

table3

where table2.table1id = table3.id

總結:第一種寫法適合較少的表關聯,優點:易懂,寫法簡單 ;缺點:多張表關聯時,自身邏輯比較容易混亂

第二種寫法適合中等量的表關聯,優點:where後面不會跟太多表的查詢語句; 缺點:查詢語句複雜時,不容易找到問題

第三種寫法適合多張表關聯,優點:寫法具有邏輯性,可以一步步篩選出自己想要的資料 缺點:語句較長

查詢分頁的幾種Sql寫法

1.概述 在網頁中如果顯示的資料太多就會佔據過多的頁面,而且顯示速度也會很慢。為了控制每次在頁面上顯示資料的數量,就可以利用分頁來顯示資料。2.技術要點 select top pagesize from table where id not in select top prenum id from ...

oracle中if else的3種寫法

1 標準sql規範 1 一 單個if 21 34 if a then 5.6endif 782 910 if a then 11.12else 13.14endif 1516 二 多個if 1718 if a then 19.20 elsif a then 21.22end if 23 這裡中間是 ...

oracle中if else的3種寫法

一 單個if 1 if a then end if 2 if a then else end if 二 多個if if a then elsif a then end if 這裡中間是 elsif 而不是else if 這裡需要特別注意 三 decode函式 decode的語法 decode val...