日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL语句大全(转)

發(fā)布時(shí)間:2025/3/15 数据库 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL语句大全(转) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

SELECT?--從數(shù)據(jù)庫表中檢索數(shù)據(jù)行和列
INSERT?--向數(shù)據(jù)庫表添加新數(shù)據(jù)行
DELETE?--從數(shù)據(jù)庫表中刪除數(shù)據(jù)行
UPDATE?--更新數(shù)據(jù)庫表中的數(shù)據(jù)
--數(shù)據(jù)定義
CREATE?TABLE?--創(chuàng)建一個(gè)數(shù)據(jù)庫表
DROP?TABLE?--從數(shù)據(jù)庫中刪除表
ALTER?TABLE?--修改數(shù)據(jù)庫表結(jié)構(gòu)
CREATE?VIEW?--創(chuàng)建一個(gè)視圖
DROP?VIEW?--從數(shù)據(jù)庫中刪除視圖
CREATE?INDEX?--為數(shù)據(jù)庫表創(chuàng)建一個(gè)索引
DROP?INDEX?--從數(shù)據(jù)庫中刪除索引
CREATE?PROCEDURE?--創(chuàng)建一個(gè)存儲過程

DROP?PROCEDURE?--從數(shù)據(jù)庫中刪除存儲過程
CREATE?TRIGGER?--創(chuàng)建一個(gè)觸發(fā)器
DROP?TRIGGER?--從數(shù)據(jù)庫中刪除觸發(fā)器
CREATE?SCHEMA?--向數(shù)據(jù)庫添加一個(gè)新模式
DROP?SCHEMA?--從數(shù)據(jù)庫中刪除一個(gè)模式
CREATE?DOMAIN?--創(chuàng)建一個(gè)數(shù)據(jù)值域
ALTER?DOMAIN?--改變域定義
DROP?DOMAIN?--從數(shù)據(jù)庫中刪除一個(gè)域
--數(shù)據(jù)控制
GRANT?--授予用戶訪問權(quán)限
DENY?--拒絕用戶訪問
REVOKE?--解除用戶訪問權(quán)限
--事務(wù)控制
COMMIT?--結(jié)束當(dāng)前事務(wù)
ROLLBACK?--中止當(dāng)前事務(wù)
SET?TRANSACTION?--定義當(dāng)前事務(wù)數(shù)據(jù)訪問特征
--程序化SQL
DECLARE?--為查詢設(shè)定游標(biāo)
EXPLAN?--為查詢描述數(shù)據(jù)訪問計(jì)劃
OPEN?--檢索查詢結(jié)果打開一個(gè)游標(biāo)
FETCH?--檢索一行查詢結(jié)果
CLOSE?--關(guān)閉游標(biāo)
PREPARE?--為動態(tài)執(zhí)行準(zhǔn)備SQL?語句
EXECUTE?--動態(tài)地執(zhí)行SQL?語句
DESCRIBE?--描述準(zhǔn)備好的查詢?
---局部變量
declare?@id?char(10)
--set?@id?=?'10010001'
select?@id?=?'10010001'?

---全局變量
---必須以@@開頭
--IF?ELSE
declare?@x?int?@y?int?@z?int
select?@x?=?1?@y?=?2?@z=3
if?@x?>?@y
print?'x?>?y'?--打印字符串'x?>?y'
else?if?@y?>?@z
print?'y?>?z'
else?print?'z?>?y'

--CASE
use?pangu
update?employee
set?e_wage?=
case
when?job_level?=?’1’?then?e_wage*1.08
when?job_level?=?’2’?then?e_wage*1.07
when?job_level?=?’3’?then?e_wage*1.06
else?e_wage*1.05
end

--WHILE?CONTINUE?BREAK
declare?@x?int?@y?int?@c?int
select?@x?=?1?@y=1
while?@x?<?3
begin
print?@x?--打印變量x?的值
while?@y?<?3
begin
select?@c?=?100*@x?+?@y
print?@c?--打印變量c?的值
select?@y?=?@y?+?1
end
select?@x?=?@x?+?1
select?@y?=?1
end

--WAITFOR
--例?等待1?小時(shí)2?分零3?秒后才執(zhí)行SELECT?語句
waitfor?delay?’01:02:03’
select?*?from?employee
--例?等到晚上11?點(diǎn)零8?分后才執(zhí)行SELECT?語句
waitfor?time?’23:08:00’
select?*?from?employee

***SELECT***

select?*(列名)?from?table_name(表名)?where?column_name?operator?value
ex:(宿主)
select?*?from?stock_information?where?stockid?=?str(nid)
stockname?=?'str_name'?
stockname?like?'%?find?this?%'?
stockname?like?'[a-zA-Z]%'?---------?([]指定值的范圍)
stockname?like?'[^F-M]%'?---------?(^排除指定范圍)
---------?只能在使用like關(guān)鍵字的where子句中使用通配符)
or?stockpath?=?'stock_path'
or?stocknumber?<?1000
and?stockindex?=?24
not?stock***?=?'man'
stocknumber?between?20?and?100
stocknumber?in(10,20,30)
order?by?stockid?desc(asc)?---------?排序,desc-降序,asc-升序
order?by?1,2?---------?by列號
stockname?=?(select?stockname?from?stock_information?where?stockid?=?4)
---------?子查詢
---------?除非能確保內(nèi)層select只返回一個(gè)行的值,
---------?否則應(yīng)在外層where子句中用一個(gè)in限定符
select?distinct?column_name?form?table_name?---------?distinct指定檢索獨(dú)有的列值,不重復(fù)
select?stocknumber?,"stocknumber?+?10"?=?stocknumber?+?10?from?table_name
select?stockname?,?"stocknumber"?=?count(*)?from?table_name?group?by?stockname
---------?group?by?將表按行分組,指定列中有相同的值
having?count(*)?=?2?---------?having選定指定的組

select?*?
from?table1,?table2?
where?table1.id?*=?table2.id?--------?左外部連接,table1中有的而table2中沒有得以null表示
table1.id?=*?table2.id?--------?右外部連接?

select?stockname?from?table1
union?[all]?-----?union合并查詢結(jié)果集,all-保留重復(fù)行
select?stockname?from?table2

***insert***

insert?into?table_name?(Stock_name,Stock_number)?value?("xxx","xxxx")
value?(select?Stockname?,?Stocknumber?from?Stock_table2)---value為select語句

***update***

update?table_name?set?Stockname?=?"xxx"?[where?Stockid?=?3]
Stockname?=?default
Stockname?=?null
Stocknumber?=?Stockname?+?4

***delete***

delete?from?table_name?where?Stockid?=?3
truncate?table_name?-----------?刪除表中所有行,仍保持表的完整性
drop?table?table_name?---------------?完全刪除表

***alter?table***?---?修改數(shù)據(jù)庫表結(jié)構(gòu)

alter?table?database.owner.table_name?add?column_name?char(2)?null?.....
sp_help?table_name?----?顯示表已有特征
create?table?table_name?(name?char(20),?age?smallint,?lname?varchar(30))
insert?into?table_name?select?.........?-----?實(shí)現(xiàn)刪除列的方法(創(chuàng)建新表)
alter?table?table_name?drop?constraint?Stockname_default?----?刪除Stockname的default約束

***function(/*常用函數(shù)*/)***

----統(tǒng)計(jì)函數(shù)----
AVG?--求平均值
COUNT?--統(tǒng)計(jì)數(shù)目
MAX?--求最大值
MIN?--求最小值
SUM?--求和

--AVG
use?pangu
select?avg(e_wage)?as?dept_avgWage
from?employee
group?by?dept_id
--MAX
--求工資最高的員工姓名
use?pangu
select?e_name
from?employee
where?e_wage?=
(select?max(e_wage)
from?employee)

--STDEV()
--STDEV()函數(shù)返回表達(dá)式中所有數(shù)據(jù)的標(biāo)準(zhǔn)差
--STDEVP()
--STDEVP()函數(shù)返回總體標(biāo)準(zhǔn)差
--VAR()
--VAR()函數(shù)返回表達(dá)式中所有值的統(tǒng)計(jì)變異

--VARP()
--VARP()函數(shù)返回總體變異數(shù)
----算術(shù)函數(shù)----
/***三角函數(shù)***/
SIN(float_expression)?--返回以弧度表示的角的正弦
COS(float_expression)?--返回以弧度表示的角的余弦
TAN(float_expression)?--返回以弧度表示的角的正切
COT(float_expression)?--返回以弧度表示的角的余切
/***反三角函數(shù)***/
ASIN(float_expression)?--返回正弦是FLOAT?值的以弧度表示的角
ACOS(float_expression)?--返回余弦是FLOAT?值的以弧度表示的角
ATAN(float_expression)?--返回正切是FLOAT?值的以弧度表示的角
ATAN2(float_expression1,float_expression2)?
--返回正切是float_expression1?/float_expres-sion2的以弧度表示的角
DEGREES(numeric_expression)
--把弧度轉(zhuǎn)換為角度返回與表達(dá)式相同的數(shù)據(jù)類型可為
--INTEGER/MONEY/REAL/FLOAT?類型
RADIANS(numeric_expression)?--把角度轉(zhuǎn)換為弧度返回與表達(dá)式相同的數(shù)據(jù)類型可為
--INTEGER/MONEY/REAL/FLOAT?類型
EXP(float_expression)?--返回表達(dá)式的指數(shù)值
LOG(float_expression)?--返回表達(dá)式的自然對數(shù)值
LOG10(float_expression)--返回表達(dá)式的以10?為底的對數(shù)值
SQRT(float_expression)?--返回表達(dá)式的平方根
/***取近似值函數(shù)***/
CEILING(numeric_expression)?--返回>=表達(dá)式的最小整數(shù)返回的數(shù)據(jù)類型與表達(dá)式相同可為
--INTEGER/MONEY/REAL/FLOAT?類型
FLOOR(numeric_expression)?--返回<=表達(dá)式的最小整數(shù)返回的數(shù)據(jù)類型與表達(dá)式相同可為
--INTEGER/MONEY/REAL/FLOAT?類型
ROUND(numeric_expression)?--返回以integer_expression?為精度的四舍五入值返回的數(shù)據(jù)
--類型與表達(dá)式相同可為INTEGER/MONEY/REAL/FLOAT?類型
ABS(numeric_expression)?--返回表達(dá)式的絕對值返回的數(shù)據(jù)類型與表達(dá)式相同可為
--INTEGER/MONEY/REAL/FLOAT?類型
SIGN(numeric_expression)?--測試參數(shù)的正負(fù)號返回0?零值1?正數(shù)或-1?負(fù)數(shù)返回的數(shù)據(jù)類型
--與表達(dá)式相同可為INTEGER/MONEY/REAL/FLOAT?類型
PI()?--返回值為π?即3.1415926535897936
RAND([integer_expression])?--用任選的[integer_expression]做種子值得出0-1?間的隨機(jī)浮點(diǎn)數(shù)
----字符串函數(shù)----
ASCII()?--函數(shù)返回字符表達(dá)式最左端字符的ASCII?碼值
CHAR()?--函數(shù)用于將ASCII?碼轉(zhuǎn)換為字符
--如果沒有輸入0?~?255?之間的ASCII?碼值CHAR?函數(shù)會返回一個(gè)NULL?值
LOWER()?--函數(shù)把字符串全部轉(zhuǎn)換為小寫
UPPER()?--函數(shù)把字符串全部轉(zhuǎn)換為大寫
STR()?--函數(shù)把數(shù)值型數(shù)據(jù)轉(zhuǎn)換為字符型數(shù)據(jù)
LTRIM()?--函數(shù)把字符串頭部的空格去掉
RTRIM()?--函數(shù)把字符串尾部的空格去掉
LEFT(),RIGHT(),SUBSTRING()?--函數(shù)返回部分字符串
CHARINDEX(),PATINDEX()?--函數(shù)返回字符串中某個(gè)指定的子串出現(xiàn)的開始位置
SOUNDEX()?--函數(shù)返回一個(gè)四位字符碼?
--SOUNDEX函數(shù)可用來查找聲音相似的字符串但SOUNDEX函數(shù)對數(shù)字和漢字均只返回0?值?
DIFFERENCE()?--函數(shù)返回由SOUNDEX?函數(shù)返回的兩個(gè)字符表達(dá)式的值的差異
--0?兩個(gè)SOUNDEX?函數(shù)返回值的第一個(gè)字符不同
--1?兩個(gè)SOUNDEX?函數(shù)返回值的第一個(gè)字符相同
--2?兩個(gè)SOUNDEX?函數(shù)返回值的第一二個(gè)字符相同
--3?兩個(gè)SOUNDEX?函數(shù)返回值的第一二三個(gè)字符相同
--4?兩個(gè)SOUNDEX?函數(shù)返回值完全相同
QUOTENAME()?--函數(shù)返回被特定字符括起來的字符串
/*select?quotename('abc',?'{')?quotename('abc')
運(yùn)行結(jié)果如下
----------------------------------{
{abc}?[abc]*/
REPLICATE()?--函數(shù)返回一個(gè)重復(fù)character_expression?指定次數(shù)的字符串
/*select?replicate('abc',?3)?replicate(?'abc',?-2)
運(yùn)行結(jié)果如下
-----------?-----------
abcabcabc?NULL*/
REVERSE()?--函數(shù)將指定的字符串的字符排列順序顛倒
REPLACE()?--函數(shù)返回被替換了指定子串的字符串
/*select?replace('abc123g',?'123',?'def')
運(yùn)行結(jié)果如下
-----------?-----------
abcdefg*/
SPACE()?--函數(shù)返回一個(gè)有指定長度的空白字符串
STUFF()?--函數(shù)用另一子串替換字符串指定位置長度的子串
----數(shù)據(jù)類型轉(zhuǎn)換函數(shù)----
CAST()?函數(shù)語法如下
CAST()?(<expression>?AS?<data_?type>[?length?])
CONVERT()?函數(shù)語法如下
CONVERT()?(<data_?type>[?length?],?<expression>?[,?style])

select?cast(100+99?as?char)?convert(varchar(12),?getdate())

轉(zhuǎn)載于:https://www.cnblogs.com/longcheng2012/archive/2012/11/13/2768343.html

總結(jié)

以上是生活随笔為你收集整理的SQL语句大全(转)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。