SQL使用總結

2022-09-12 15:00:46 字數 3779 閱讀 9649

本文為**:對於sql的學習與使用,推薦大家去這兒,講的很系統:

下面僅供自己複習!

sql dml 和 ddl

可以把 sql 分為兩個部分:資料操作語言 (dml) 和 資料定義語言 (ddl)。

sql (結構化查詢語言)是用於執行查詢的語法。但是 sql 語言也包含用於更新、插入和刪除記錄的語法。

查詢和更新指令構成了 sql 的 dml 部分:

sql 的資料定義語言 (ddl) 部分使我們有能力建立或刪除**。我們也可以定義索引(鍵),規定表之間的鏈結,以及施加表間的約束。

sql 中最重要的 ddl 語句:

distinct:用於返回唯一不同的值。

語法:select distinct 列名稱 from 表名稱

where子句 :用於規定選擇的標準。

如需有條件地從表中選取資料,可將 where 子句新增到 select 語句。

語法:select 列名稱 from 表名稱 where 列 運算子 值

insert into語句:

insert into 語句用於向**中插入新的行。

語法:insert into 表名稱 values (值1, 值2,....)

我們也可以指定所要插入資料的列:

insert into table_name (列1, 列2,...) values (值1, 值2,....)

update語句:

update 語句用於修改表中的資料。

語法:update 表名稱 set 列名稱 = 新值 where 列名稱 = 某值

delete語句:

delete 語句用於刪除表中的行。

語法delete from 表名稱 where 列名稱 = 值

top子句:

top 子句用於規定要返回的記錄的數目。

對於擁有數千條記錄的大型表來說,top 子句是非常有用的。

注釋:並非所有的資料庫系統都支援 top 子句。

sql server 的語法:

select top number|percent column_name(s) from table_name

mysql 和 oracle 中的 sql select top 是等價的

oracle 語法

select column_name(s) from table_name where rownum <= number

like操作符用於在 where 子句中搜尋列中的指定模式。

like 操作符

like 操作符用於在 where 子句中搜尋列中的指定模式。

sql like 操作符語法

select column_name(s) from table_name where column_name like pattern

between操作符在 where 子句中使用,作用是選取介於兩個值之間的資料範圍。

between 操作符

操作符 between ... and 會選取介於兩個值之間的資料範圍。這些值可以是數值、文字或者日期。

sql between 語法

select column_name(s) from table_name where column_name between value1 and value2

sql alias:別名使查詢程式更易閱讀和書寫

表的 sql alias 語法

select column_name(s) from table_name as alias_name

列的 sql alias 語法

select column_name as alias_name from table_name

sql jion: 用於根據兩個或多個表中的列之間的關係,從這些表中查詢資料。

sql join - 使用 join

如果我們希望列出所有人的定購,可以使用下面的 select 語句:

select persons.lastname, persons.firstname, orders.orderno from persons inner join orders on persons.id_p = orders.id_p order by persons.lastname

不同的 sql join

除了我們在上面的例子中使用的 inner join(內連線),我們還可以使用其他幾種連線。

下面列出了您可以使用的 join 型別,以及它們之間的差異。

sql left join關鍵字

left join 關鍵字會從左表 (table_name1) 那裡返回所有的行,即使在右表 (table_name2) 中沒有匹配的行。

left join 關鍵字語法

select column_name(s) from table_name1 left join table_name2 on table_name1.column_name=table_name2.column_name

注釋:在某些資料庫中, left join 稱為 left outer join。

sql right join關鍵字

right join 關鍵字會右表 (table_name2) 那裡返回所有的行,即使在左表 (table_name1) 中沒有匹配的行。

right join 關鍵字語法

select column_name(s) from table_name1 right join table_name2 on table_name1.column_name=table_name2.column_name

注釋:在某些資料庫中, right join 稱為 right outer join。

sql full join關鍵字

只要其中某個表存在匹配,full join 關鍵字就會返回行。

full join 關鍵字語法

select column_name(s) from table_name1 full join table_name2 on table_name1.column_name=table_name2.column_name

注釋:在某些資料庫中, full join 稱為 full outer join。

sql union操作符

union 操作符用於合併兩個或多個 select 語句的結果集。

請注意,union 內部的 select 語句必須擁有相同數量的列。列也必須擁有相似的資料型別。同時,每條 select 語句中的列的順序必須相同。

sql union 語法

select column_name(s) from table_name1 union select column_name(s) from table_name2

注釋:預設地,union 操作符選取不同的值。如果允許重複的值,請使用 union all。

sql union all 語法

select column_name(s) from table_name1 union all select column_name(s) from table_name2

另外,union 結果集中的列名總是等於 union 中第乙個 select 語句中的列名。

SQL使用總結

下面僅供自己複習!sql dml 和 ddl 可以把 sql 分為兩個部分 資料操作語言 dml 和 資料定義語言 ddl sql 結構化查詢語言 是用於執行查詢的語法。但是 sql 語言也包含用於更新 插入和刪除記錄的語法。查詢和更新指令構成了 sql 的 dml 部分 sql 的資料定義語言 d...

sql使用總結

sql日常使用經驗總結 1.關於join 非inner join時,條件放在on層還是where層要分清,where是對join的結果再次做條件篩選,on條件則是先按條件篩選,再join 2.from子查詢與join選擇 子查詢寫法 select t11.tb2.xx from select a.f...

Sql使用日常總結

乙個字段裡面的值是 a,b,c 分成三行讀取 with t1 as select a,b,c c1 from dual select distinct regexp substr c1,1,level c1 from t1connect by level length c1 length repla...