程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> SQL 語句大全,sql語句大全

SQL 語句大全,sql語句大全

編輯:MySQL綜合教程

SQL 語句大全,sql語句大全


創建數據庫

創建之前判斷該數據庫是否存在

if exists (select * from sysdatabases where name='databaseName') 

drop database databaseName

go

Create DATABASE databasename

刪除數據庫

drop database databasename

備份sql server

創建備份數據的 device

USE master

EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'

--- 開始備份

BACKUP DATABASE pubs TO testBack

創建新表

create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)

根據已有的表創建新表:

A:go 

use 原數據庫名

go 

select * into 目的數據庫名.dbo.目的表名 from 原表名(使用舊表創建新表)

B:create table tab_new as select col1,col2… from tab_old definition only

創建序列

create sequence SIMON_SEQUENCE 

minvalue 1 -- 最小值 

maxvalue 999999999999999999999999999 -- 最大值

start with 1 -- 開始值

increment by 1 -- 每次加幾
cache 20;

刪除新表

drop table tabname

增加一個列

Alter table tabname add colname coltype

刪除一個列

Alter table tabname drop column colname

添加主鍵

Alter table tabname add primary key(col)

說明:刪除主鍵:Alter table tabname drop primary key(col)

創建索引

create [unique] index idxname on tabname(col…。)

刪除索引

drop index idxname on tabname

注:索引是不可更改的,想更改必須刪除重新建。

創建視圖

create view viewname as select statement

刪除視圖

drop view viewname

 

簡單基本的sql語句

(1) 數據記錄篩選:

sql="select * from 數據表 where 字段名=字段值 order by 字段名 [desc]"

sql="select * from 數據表 where 字段名 like '%字段值%' order by 字段名 [desc]"

sql="select top 10 * from 數據表 where 字段名=字段值 order by 字段名 [desc]"

sql="select top 10 * from 數據表 order by 字段名 [desc]"

sql="select * from 數據表 where 字段名 in ('值1','值2','值3')"

sql="select * from 數據表 where 字段名 between 值1 and 值2"

(2) 更新數據記錄:

sql="update 數據表 set 字段名=字段值 where 條件表達式"

sql="update 數據表 set 字段1=值1,字段2=值2 …… 字段n=值n where 條件表達式"

(3) 刪除數據記錄:

sql="delete from 數據表 where 條件表達式" 

sql="delete from 數據表" (將數據表所有記錄刪除)

(4) 添加數據記錄:

sql="insert into 數據表 (字段1,字段2,字段3 …) values (值1,值2,值3 …)"

sql="insert into 目標數據表 select * from 源數據表" (把源數據表的記錄添加到目標數據表)

(5) 數據記錄統計函數:

AVG(字段名)          得出一個表格欄平均值

COUNT(*;字段名)   對數據行數的統計或對某一欄有值的數據行數統計

MAX(字段名)         取得一個表格欄最大的值

MIN(字段名)          取得一個表格欄最小的值

SUM(字段名)         把數據欄的值相加

引用以上函數的方法:

sql="select sum(字段名) as 別名 from 數據表 where 條件表達式"

set rs=conn.excute(sql)

用 rs("別名") 獲取統計的值,其它函數運用同上。

查詢去除重復值:select distinct * from table1

 

幾個高級查詢運算詞

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),不消除重復行。

注:使用運算詞的幾個查詢結果行必須是一致的。

 

使用外連接

A、left 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

B:right outer join

右外連接(右連接):結果集既包括連接表的匹配連接行,也包括右連接表的所有行。

C:full outer join

全外連接:不僅包括符號連接表的匹配行,還包括兩個連接表中的所有記錄。

 

SQL  高級詞

1、TOP 子句用於規定要返回的記錄的數目

選取頭兩條記錄:

SELECT TOP 2 * FROM Persons

選取 50% 的記錄:

SELECT TOP 50 PERCENT * FROM Persons

2、LIKE 操作符用於在 WHERE 子句中搜索列中的指定模式。

提示:"%" 可用於定義通配符(模式中缺少的字母)。NOT LIKE

3、SQL 通配符

在搜索數據庫中的數據時,SQL 通配符可以替代一個或多個字符。

SQL 通配符必須與 LIKE 運算符一起使用。

在 SQL 中,可使用以下通配符:

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved