sql簡介:
sql 是用於訪問和處理資料庫的標準的計算機語言。
什麼是 sql?
sql 指結構化查詢語言
sql 使我們有能力訪問資料庫
sql 是一種 ansi 的標準計算機語言
編者注:ansi,美國國家標準化組織
sql 能做什麼?
sql 面向資料庫執行查詢
sql 可從資料庫取回資料
sql 可在資料庫中插入新的記錄
sql 可更新資料庫中的資料
sql 可從資料庫刪除記錄
sql 可建立新資料庫
sql 可在資料庫中建立新錶
sql 可在資料庫中建立儲存過程
sql 可在資料庫中建立檢視
sql 可以設定表、儲存過程和檢視的許可權
sql 是一種標準 - 但是…
sql 是一門 ansi 的標準計算機語言,用來訪問和運算元據庫系統。sql 語句用於取回和更新資料庫中的資料。sql 可與資料庫程式協同工作,比如 ms access、db2、informix、ms sql server、oracle、sybase 以及其他資料庫系統。
注釋:除了 sql 標準之外,大部分 sql 資料庫程式都擁有它們自己的私有擴充套件!
rdbms
rdbms 指的是關係型資料庫管理系統。
rdbms 是 sql 的基礎,同樣也是所有現代資料庫系統的基礎,比如 ms sql server, ibm db2, oracle, mysql 以及 microsoft access。
rdbms 中的資料儲存在被稱為表(tables)的資料庫物件中。
表是相關的資料項的集合,它由列和行組成。
重要事項
一定要記住,sql 對大小寫不敏感!
sql dml 和 ddl
可以把 sql 分為兩個部分:資料操作語言 (dml) 和 資料定義語言 (ddl)。
sql (結構化查詢語言)是用於執行查詢的語法。但是 sql 語言也包含用於更新、插入和刪除記錄的語法。
查詢和更新指令構成了 sql 的 dml 部分:
select - 從資料庫表中獲取資料
update - 更新資料庫表中的資料
delete - 從資料庫表中刪除資料
insert into - 向資料庫表中插入資料
sql 的資料定義語言 (ddl) 部分使我們有能力建立或刪除**。我們也可以定義索引(鍵),規定表之間的鏈結,以及施加表間的約束。
sql 中最重要的 ddl 語句:
create database - 建立新資料庫
alter database - 修改資料庫
create table - 建立新錶
alter table - 變更(改變)資料庫表
drop table - 刪除表
create index - 建立索引(搜尋鍵)
drop index - 刪除索引
sql select 語句
select 語句用於從表中選取資料。
結果被儲存在乙個結果表中(稱為結果集)。
sql select 語法sql select distinct 語句語法:
select distinct 列名稱 from 表名稱
where 子句
如需有條件地從表中選取資料,可將 where 子句新增到 select 語句。
語法
select 列名稱 from 表名稱 where 列 運算子 值
下面的運算子可在 where 子句中使用:
操作符 描述
= 等於
<> 不等
< 小於
『>=』 大於等於
<= 小於等於
between 在某個範圍內
like 搜尋某種模式
注釋:在某些版本的 sql 中,操作符 <> 可以寫為 !=。
引號的使用
請注意,我們在例子中的條件值周圍使用的是單引號。
sql 使用單引號來環繞文字值(大部分資料庫系統也接受雙引號)。如果是數值,請不要使用引號。
and 和 or 運算子用於基於乙個以上的條件對記錄進行過濾。
and 和 or 運算子
and 和 or 可在 where 子語句中把兩個或多個條件結合起來。
如果第乙個條件和第二個條件都成立,則 and 運算子顯示一條記錄。
如果第乙個條件和第二個條件中只要有乙個成立,則 or 運算子顯示一條記錄。
and語法:
select * from 表名稱 where 列 運算子 值 and 列值 運算子 值;
or語法:
select * from 表名稱 where 列 運算子 值 or 列值 運算子 值;
結合 and 和 or 運算子
我們也可以把 and 和 or 結合起來(使用圓括號來組成複雜的表示式):
語法:
select * from 表名稱 where (列 運算子 值 or 列值 運算子 值)and 列值 運算子 值;
order by 語句用於對結果集進行排序。
order by 語句
order by 語句用於根據指定的列對結果集進行排序。
order by 語句預設按照公升序對記錄進行排序,也可以使用asc關鍵字。
如果您希望按照降序對記錄進行排序,可以使用 desc 關鍵字。
語法:
select * from 表名稱 where order by 列 ;
select * from 表名稱 where order by 列 desc ;
insert into 語句
insert into 語句用於向**中插入新的行。
語法
insert into 表名稱 values (值1, 值2,…)
我們也可以指定所要插入資料的列:
insert into 表名稱 (列1, 列2,…) values (值1, 值2,…)
update 語句
update 語句用於修改表中的資料。
語法:
update 表名稱 set 列名稱 = 新值 where 列名稱 = 某值
delete 語句
delete 語句用於刪除表中的行。
語法
delete from 表名稱 where 列名稱 = 值
刪除所有行
可以在不刪除表的情況下刪除所有的行。這意味著表的結構、屬性和索引都是完整的:
delete from 表名稱;
或者:delete * from 表名稱;
drop truncate delete 區別?
drop 直接刪除表,truncate刪除表中的資料,在插入時自增長時id從1開始,delete刪除資料可以加where語句;
*delete語句執行刪除的過程是每次從表中刪除一行,並且同時將該行的刪除操作為事務記錄在日誌中,以便進行回滾操作,truncate table 則一次性地從表中刪除所有的資料,並且不把單獨刪除行的記錄儲存在日誌中儲存,刪除行記錄是不能恢復的,但是執行速度快;
*truncate 和delete只是刪除資料,而drop則是刪除整個表包括結構和資料
SQL基礎知識
本篇文章是講解sql的基礎知識,但也講得不全面,我只記錄了自己不懂的或者不熟悉的東西。一 在sql中簡單的查詢 1.重複的記錄 distinct 可以通過在選擇列表前的select語句中插入關鍵字distinct來消除重複的查詢結果記錄。比如 select distinct city from ci...
SQL基礎知識
sql作用 1.面向資料庫執行查詢 2.可從資料庫取回資料 3.可在資料庫中插入新的記錄 4.可更新資料庫中的資料 5.可從資料庫刪除記錄 6.可建立新資料庫 7.可在資料庫中建立新錶 8.可在資料庫中建立儲存過程 9.可在資料庫中建立檢視 10.可以設定表 儲存過程和檢視的許可權。資料庫操作語句 ...
SQL基礎知識
資料庫就是資料的倉庫,dbms資料庫管理系統同來對大資料的管理 檢索,就是對資料庫的管理。乙個dbms可以管理多個資料庫,這些不同的資料庫叫catalog或database,dbms允許把不同的database儲存在不同磁碟,每個資料庫中的表名不能相同。table 表,把不同型別的資料放到不同的區域...