SQL語法總結

2021-10-03 16:17:58 字數 3623 閱讀 9098

二、like模糊查詢

例:select * from emp where ename like 『m%』;

查詢 emp 表中 ename 列中有 m 的值,m 為要查詢內容中的模糊資訊。

% 表示多個字值,_ 下劃線表示乙個字元;

m% : 為能配符,正規表示式,表示的意思為模糊查詢資訊為 m 開頭的。

%m% : 表示查詢包含m的所有內容。

%m_ : 表示查詢以m在倒數第二位的所有內容。

三、sql and & or 運算子

下面的 sql 語句從 「websites」 表中選取國家為 「usa」 或者 「cn」 的所有客戶:

例項:select * from websites where country=『usa』 or country=『cn』;

四、sql order by 關鍵字

order by 關鍵字用於對結果集按照乙個列或者多個列進行排序。

order by 關鍵字預設按照公升序對記錄進行排序。如果需要按照降序對記錄進行排序,您可以使用 desc 關鍵字。

五、select top, limit, rownum 子句

sql server / ms access 語法

select top number|percent column_name(s) from table_name;

mysql 語法

select column_name(s) from table_name limit number;

oracle 語法

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

例項 select * from persons where rownum <=5;

六、in 操作符

in 操作符允許您在 where 子句中規定多個值。

sql in 語法

select column_name(s) from table_name where column_name in (value1,value2,…);

七、sql 連線(join)

inner join:如果表中有至少乙個匹配,則返回行

left join:即使右表中沒有匹配,也從左表返回所有的行

right join:即使左表中沒有匹配,也從右表返回所有的行

full join:只要其中乙個表中存在匹配,則返回行

八、sql union 操作符

select column_name(s) from table1 union all select column_name(s) from table2;

九、insert into select 語句

我們可以從乙個表中複製所有的列插入到另乙個已存在的表中:

insert into table2 select * from table1;

或者我們可以只複製希望的列插入到另乙個已存在的表中:

insert into table2 (column_name(s)) select column_name(s) from table1;

十、sql create index 語句

下面的 sql 語句在 「persons」 表的 「lastname」 列上建立乙個名為 「pindex」 的索引:

create index pindex on persons (lastname)

如果您希望索引不止乙個列,您可以在括號中列出這些列的名稱,用逗號隔開:

create index pindex on persons (lastname, firstname)

十一、sql 撤銷索引、撤銷表以及撤銷資料庫

通過使用 drop 語句,可以輕鬆地刪除索引、表和資料庫。

drop index 語句

drop index 語句用於刪除表中的索引。

用於 ms access 的 drop index 語法:drop index index_name on table_name

用於 ms sql server 的 drop index 語法:drop index table_name.index_name

用於 db2/oracle 的 drop index 語法:drop index index_name

用於 mysql 的 drop index 語法:alter table table_name drop index index_name

drop table 語句

drop table 語句用於刪除表。

drop table table_name

drop database 語句

drop database 語句用於刪除資料庫。

drop database database_name

truncate table 語句

如果我們僅僅需要刪除表內的資料,但並不刪除表本身,那麼我們該如何做呢?

請使用 truncate table 語句:truncate table table_name

十二、sql date 函式

sql 日期(dates)

note當我們處理日期時,最難的任務恐怕是確保所插入的日期的格式,與資料庫中日期列的格式相匹配。

只要您的資料報含的只是日期部分,執行查詢就不會出問題。但是,如果涉及時間部分,情況就有點複雜了。

在討論日期查詢的複雜性之前,我們先來看看最重要的內建日期處理函式。

mysql date 函式

下面的**列出了 mysql 中最重要的內建日期函式:

函式 描述

now() 返回當前的日期和時間

curdate() 返回當前的日期

curtime() 返回當前的時間

date() 提取日期或日期/時間表示式的日期部分

extract() 返回日期/時間的單獨部分

date_add() 向日期新增指定的時間間隔

date_sub() 從日期減去指定的時間間隔

datediff() 返回兩個日期之間的天數

date_format() 用不同的格式顯示日期/時間

sql server date 函式

下面的**列出了 sql server 中最重要的內建日期函式:

函式 描述

getdate() 返回當前的日期和時間

datepart() 返回日期/時間的單獨部分

dateadd() 在日期中新增或減去指定的時間間隔

datediff() 返回兩個日期之間的時間

convert() 用不同的格式顯示日期/時間

sql date 資料型別

mysql 使用下列資料型別在資料庫中儲存日期或日期/時間值:

date - 格式:yyyy-mm-dd

datetime - 格式:yyyy-mm-dd hh:mm:ss

timestamp - 格式:yyyy-mm-dd hh:mm:ss

year - 格式:yyyy 或 yy

sql server 使用下列資料型別在資料庫中儲存日期或日期/時間值:

date - 格式:yyyy-mm-dd

datetime - 格式:yyyy-mm-dd hh:mm:ss

smalldatetime - 格式:yyyy-mm-dd hh:mm:ss

timestamp - 格式:唯一的數字

學習總結 SQL學習總結之SQL語法

選取所有列即原表返回 select from table name 例如 select distinct country from websites 例如 從 websites 表中選取國家為 cn 的所有 例如 從 websites 表中選取id為1的所有 文字字段 vs.數值字段 where 子...

用於 C 的 SQL 基本語法總結

本文目前用於 visual studio 2015 平台的 sqlite3 其他用法以後總結。在 visual studio 2015 中,選擇 工具 nuget 包管理器 管理解決方案的 nuget 程式包 在此介面下檢索 sqlite 根據需要選擇安裝其中乙個 sqlite 庫,最好是紅框部分內...

用於 C 的 SQL 基本語法總結

本文目前用於 visual studio 2015 平台的 sqlite3 其他用法以後總結。在 visual studio 2015 中,選擇 工具 nuget 包管理器 管理解決方案的 nuget 程式包 在此介面下檢索 sqlite 根據需要選擇安裝其中乙個 sqlite 庫,最好是紅框部分內...