經典SQL語句大全(一)

一、基礎

1、說明:創建數據庫
CREATE DATABASE database-name
2
、說明:刪除數據庫
drop database dbname

3、說明:備份sql server
--- 創建 備份數據的 device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:/mssql7backup/MyNwind_1.dat'
---
開始 備份

BACKUP DATABASE pubs TO testBack

4、說明:創建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)

根據已有的表創建新表:
Acreate table tab_new like tab_old (使用舊錶創建新表)
B
create table tab_new as select col1,col2… from tab_old definition only
5、說明:刪除新表
drop table tabname

6、說明:增加一個列
Alter table tabname add column col type

列增加後將不能刪除。DB2中列加上後數據類型也不能改變,唯一能改變的是增加varchar類型的長度。
7、說明:添加主鍵
Alter table tabname add primary key(col)
說明:刪除主鍵 Alter table tabname drop primary key(col)

8、說明:創建索引create [unique] index idxname on tabname(col….)
刪除索引drop index idxname

注:索引是不可更改的,想更改必須刪除重新建。
9
、說明:創建視圖create view viewname as select statement
刪除視圖drop view viewname
10
、說明:幾個簡單的基本的sql語句
選擇:
select * from table1 where 範圍
插入:insert into table1(field1,field2) values(value1,value2)
刪除:delete from table1 where 範圍

更新
update table1 set field1=value1 where 範圍
查找select * from table1 where field1 like ’%value1%’ ---like的語法很精妙,查資料!
排序select * from table1 order by field1,field2 [desc]
總數
select count as totalcount from table1
求和
select sum(field1) as sumvalue from table1
平均
select avg(field1) as avgvalue from table1
最大
select max(field1) as maxvalue from table1
最小
select min(field1) as minvalue from table1
11、說明:幾個高級查詢運算詞
A
UNION 運算符

UNION 運算符通過組合其他兩個結果表(例如 TABLE1 TABLE2)並消去表中任何重複行而派生出一個結果表。當 ALL UNION 一起使用時(即 UNION ALL),不消除重複行。兩種情況下,派生表的每一行不是來自 TABLE1 就是來自 TABLE2

B EXCEPT 運算符
EXCEPT
運算符通過包括所有在 TABLE1 中但不在 TABLE2 中的行並消除所有重複行而派生出一個結果表。當 ALL EXCEPT 一起使用時 (EXCEPT ALL),不消除重複行。
C INTERSECT 運算符
INTERSECT
運算符通過只包括 TABLE1 TABLE2 中都有的行並消除所有重複行而派生出一個結果表。當 ALL INTERSECT 一起使用時 (INTERSECT ALL),不消除重複行。
注:使用運算詞的幾個查詢結果行必須是一致的
12
、說明:使用外連接
Aleft outer join
外連接(左連接):結果集幾包括連接表的匹配行,也包括左連接表的所有行。
SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
Bright outer join:
右外連接(右連接):結果集既包括連接表的匹配連接行,也包括右連接表的所有行。
Cfull/cross outer join
全外連接:不僅包括符號連接表的匹配行,還包括兩個連接表中的所有記錄。
12
、分組:Group by:
  
一張表,一旦分組 完成後,查詢後只能得到組相關的信息。
   
組相關的信息:(統計信息) count,sum,max,min,avg  分組的標準)
 
  SQLServer中分組時:不能以text,ntext,image類型的字段作爲分組依據
  
selecte統計函數中的字段,不能和普通的字段放在一起;

13、對數據庫進行操作:
  
分離數據庫
sp_detach_db; 附加數據庫sp_attach_db 後接表明,附加需要完整的路徑名
14.
如何修改數據庫的名稱:

sp_renamedb 'old_name', 'new_name'

發佈了23 篇原創文章 · 獲贊 4 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章