SQL操作

創(chuàng)建表

語法 create table 表名(列+類型,列+類型);

create table Websites (

id int,

name varchar(255),

url varchar(255),

alexa int,

country varchar(255)

)

插入

語法 insert into 表名(列名,列名) values(內(nèi)容,內(nèi)容);

insert into Websites(id,name,url,alexa,country) values(1,'Google','https://www.google.cm/',1,'USA');

insert into Websites(id,name,url,alexa,country) values(2,'淘寶',' https://www.taobao.com/',13,'CN');

insert into Websites(id,name,url,alexa,country) values(3,'菜鳥教程',' http://www.runoob.com/',4689,'CN');

insert into Websites(id,name,url,alexa,country) values(4,'微博','http://weibo.com/',20,'CN');

insert into Websites(id,name,url,alexa,country) values(5,'FaceBook','https://www.facebook.com/',3,'USA');

刪除

DELETE FROM 表名稱 WHERE 列名稱 = 值

delete form websites where id = 1

更新修改

語法 UPDATE 表名稱 SET 列名稱 = 新值 ,列名稱 = 新值 WHERE 列名稱 = 某值

UPDATE websites SET id = 3 WHERE NAME ='菜鳥教程'

查詢

語法 select * from 表名 limit 2, 1 或 limit 2 offset 1

select * from websites where id >3 limit 2

排序

order by 升序

order by 列名,列名 desc 降序

select id,name,url,alexa,country from websites order by alexa desc

去重

語法 select distinct 列名稱 from 表名稱

select distinct * from websites

高級(jí)

top 取前N個(gè)數(shù)據(jù)

mysql limit

語法 select * from 表名 limit 3

sqlserver

語法 select top 5 * from 表名

select top 50 percent * from 表名

like 模糊查詢

語法 select * from 表名 where 列名 like '%00%'

like '李*'

like '李%'

like '%[0-9]%'

like ‘%[a-z]%’

like '%[!0-9]%'

select * from table1 where name like ‘%明%’

通配符

%代替 0個(gè)或者多個(gè)字符

_代替 1個(gè)字符

[charlist] 字符列中的任何單一字符

[^charlist]或 [!charlist] 不在字符列中的任何單一字符

語句

SELECT * FROM Websites WHERE name REGEXP '^[GFs]';

SELECT * FROM Websites WHERE name REGEXP '^[^A-H]';

In 操作符

IN 操作符允許您在 WHERE 子句中規(guī)定多個(gè)值。

語法: select * from 表名 where 列名 in (value1,value2,value3) ;

SELECT * FROM websites WHERE NAME IN ('Google','facebook');

between

語法: SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2;

語句

下面的 SQL 語句選取 alexa 介于 1 和 20 之間的所有網(wǎng)站:

SELECT * FROM Websites WHERE alexa BETWEEN 1 AND 20;

NOT BETWEEN 操作符實(shí)例

SELECT * FROM Websites WHERE alexa NOT BETWEEN 1 AND 20;

帶有 IN 的 BETWEEN 操作符實(shí)例

下面的 SQL 語句選取alexa介于 1 和 20 之間但 country 不為 USA 和 IND 的所有網(wǎng)站:

SELECT * FROM websites WHERE(alexa NOT BETWEEN 3 AND 13 ) AND NOT country IN ('cn')

帶有文本值的 BETWEEN 操作符實(shí)例

下面的 SQL 語句選取 name 以介于 'A' 和 'H' 之間字母開始的所有網(wǎng)站:

SELECT * FROM Websites WHERE name BETWEEN 'A' AND 'H';

帶有日期值的 BETWEEN 操作符實(shí)例

下面的 SQL 語句選取 date 介于 '2016-05-10' 和 '2016-05-14' 之間的所有訪問記錄:

SELECT * FROM access_log WHERE date BETWEEN '2016-05-10' AND '2016-05-14';

別名

語法 SELECT column_name(s) FROM table_name AS alias_name;

Join

SQL join 用于把來自兩個(gè)或多個(gè)表的行結(jié)合起來。

SELECT websites.id ,websites.name AS '名字',websites.url,websites.country,access.datet,access.count FROM websites JOIN access ON websites.id = access.id

約束

PCREATE TABLE Persons(Id_P int NOT NULL,LastName varchar(255) NOT NULL,FirstName varchar(255),Address varchar(255),City varchar(255),PRIMARY KEY (Id_P))

外鍵

一個(gè)表中的 FOREIGN KEY 指向另一個(gè)表中的 PRIMARY KEY。

"Persons" 表:

Id_P

LastName

FirstName

Address

City

1AdamsJohnOxford StreetLondon

2BushGeorgeFifth AvenueNew York

3CarterThomasChangan StreetBeijing

"Orders" 表:

Id_O

OrderNo

Id_P

1778953

2446783

3224561

4245621

FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容