溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

常用的SQL語(yǔ)句

發(fā)布時(shí)間:2020-07-10 12:40:11 來(lái)源:網(wǎng)絡(luò) 閱讀:238 作者:xiaoxmok 欄目:關(guān)系型數(shù)據(jù)庫(kù)

SELECT 

sql="select * from  數(shù)據(jù)表  where  字段名=字段值  order by  字段名  [desc]" 

 

sql="select * from  數(shù)據(jù)表  where  字段名  like %字段值% order by  字段名 

[desc]" 

 

sql="select top 10 * from  數(shù)據(jù)表  where  字段名  order by  字段名  [desc]" 

 

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

 

sql="select * from  數(shù)據(jù)表  where  字段名  between   1 and   2" 



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 列號(hào) 

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 

sql="insert into  數(shù)據(jù)表  (字段 1,字段 2,字段 3 ) valuess ( 1, 2, 3 )" 

 

sql="insert into  目標(biāo)數(shù)據(jù)表  select * from 源數(shù)據(jù)表" (把源數(shù)據(jù)表的記錄添加到 

目標(biāo)數(shù)據(jù)表

 

insert into table_name (Stock_name,Stock_number) value ("xxx","xxxx") 

value (select Stockname , Stocknumber from Stock_table2)---value  select 語(yǔ)句 

update 

sql="update  數(shù)據(jù)表  set  字段名=字段值  where  條件表達(dá)式

 

sql="update  數(shù)據(jù)表  set  字段 1= 1,字段 2= 2   字段 n= n where  條件表 

達(dá)式

 

 

update table_name set Stockname = "xxx" [where Stockid = 3] 

Stockname = default 

http://hi.baidu.com/ttcc2009 


 

Stockname = null 

Stocknumber = Stockname + 4 

delete 

sql="delete from  數(shù)據(jù)表  where  條件表達(dá)式

 

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

 

delete from table_name where Stockid = 3 

truncate table_name -----------  刪除表中所有行,仍保持表的完整性 

drop table table_name ---------------  完全刪除表 



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 列號(hào) 

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 

sql="insert into  數(shù)據(jù)表  (字段 1,字段 2,字段 3 ) valuess ( 1, 2, 3 )" 

 

sql="insert into  目標(biāo)數(shù)據(jù)表  select * from 源數(shù)據(jù)表" (把源數(shù)據(jù)表的記錄添加到 

目標(biāo)數(shù)據(jù)表

 

insert into table_name (Stock_name,Stock_number) value ("xxx","xxxx") 

value (select Stockname , Stocknumber from Stock_table2)---value  select 語(yǔ)句 

update 

sql="update  數(shù)據(jù)表  set  字段名=字段值  where  條件表達(dá)式

 

sql="update  數(shù)據(jù)表  set  字段 1= 1,字段 2= 2   字段 n= n where  條件表 

達(dá)式

 

 

update table_name set Stockname = "xxx" [where Stockid = 3] 

Stockname = default 

http://hi.baidu.com/ttcc2009 


 

Stockname = null 

Stocknumber = Stockname + 4 



IN 操作符

IN 操作符允許我們?cè)?/span> WHERE 子句中規(guī)定多個(gè)值。

SQL IN 語(yǔ)法

SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...)




AND  OR 運(yùn)算符

AND  OR 可在 WHERE 子語(yǔ)句中把兩個(gè)或多個(gè)條件結(jié)合起來(lái)。

如果第一個(gè)條件和第二個(gè)條件都成立,則 AND 運(yùn)算符顯示一條記錄。

如果第一個(gè)條件和第二個(gè)條件中只要有一個(gè)成立,則 OR 運(yùn)算符顯示一條記錄。




where

如需有條件地從表中選取數(shù)據(jù),可將 WHERE 子句添加到 SELECT 語(yǔ)句。

SELECT 列名稱 FROM 表名稱 WHERE 列 運(yùn)算符 值


操作符描述
=
等于
<>不等于
>大于
<小于
>=
大于等于
<=小于等于
between

在某個(gè)范圍內(nèi)

like
搜索某種范圍




alter table ---  修改數(shù)據(jù)庫(kù)表結(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 約束 






CREATE TABLE 

CREATE TABLE 表名稱
(
列名稱1 數(shù)據(jù)類型,
列名稱2 數(shù)據(jù)類型,
列名稱3 數(shù)據(jù)類型,
....)



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

----統(tǒng)計(jì)函數(shù)---- 

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

COUNT(*|字段名)  對(duì)數(shù)據(jù)行數(shù)的統(tǒng)計(jì)或?qū)δ骋粰谟兄档臄?shù)據(jù)行數(shù)統(tǒng)計(jì) 

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

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

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

 

引用以上函數(shù)的方法: 

 

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

set rs=conn.excute(sql) 

 

  rs("別名")  獲取統(tǒng)的計(jì)值,其它函數(shù)運(yùn)用同上。 

 

--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ì)變異數(shù) 

--VARP() 

--VARP()函數(shù)返回總體變異數(shù) 

----算術(shù)函數(shù)---- 





向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI