數(shù)據(jù)庫常用基本命令:
目前成都創(chuàng)新互聯(lián)公司已為超過千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管運(yùn)營、企業(yè)網(wǎng)站設(shè)計(jì)、鲅魚圈網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
show databases; #查看數(shù)據(jù)庫
use + 數(shù)據(jù)庫名稱; #進(jìn)入數(shù)據(jù)庫
show tables; #查看對應(yīng)數(shù)據(jù)庫中的表
select * from info; #查看info表中的數(shù)據(jù), * 代表所有數(shù)據(jù)
select 字段 from 表; #查看指定的數(shù)據(jù),從表中查看
創(chuàng)建數(shù)據(jù)庫
create database school ; #創(chuàng)建school數(shù)據(jù)庫
創(chuàng)建表:一定要進(jìn)入到數(shù)據(jù)庫中
舉例:
create table info (id int not null primary key auto_increment,name char (10) not null,score decimal(5,2),hobby int (2)) ;
#創(chuàng)建一個名為info的數(shù)據(jù)表,表的屬性(id 類型為int 不能為空null 為主鍵 自增列,name char(字符串長度為10)不為null空值,成績 最大5位數(shù)字其中兩位小數(shù),hobby 類型為int(2字節(jié)));
PS詳解:
創(chuàng)建表(表的屬性)
not null:不為空值
primary key:主鍵
auto_increment: 自增列
char:定長字符串類型
說明:M為最大可存儲字節(jié)數(shù) 漢子占兩個字節(jié),通過指定m,來限制存儲的最大字符數(shù)長度,char(20)和varchar(20)將最多只能存儲20個字符,超過的字符將會被截掉。m必須小于該類型允許的最大字符數(shù)。
decimal(5,2):定點(diǎn)精度和小數(shù)位數(shù)?!咀畲?位數(shù)字,其中兩位小數(shù)】
5是(有效位數(shù):可儲存的最大十進(jìn)位數(shù)總數(shù),小數(shù)點(diǎn)左右兩側(cè)都包括在內(nèi)。有效位數(shù)必須是 1 至最大有效位數(shù) 38 之間的值。)
2是 (小數(shù)位數(shù):小數(shù)點(diǎn)右側(cè)所能儲存的最大十進(jìn)位數(shù)。小數(shù)位數(shù)必須是從 0 到 4 的值。只有在指定了有效位數(shù)時,才能指定小數(shù)位數(shù)。預(yù)設(shè)小數(shù)位數(shù)是 0;因此,0 <= 1 <= 4。最大儲存體大小會隨著有效位數(shù)而不同。)
常用基本命令
insert into info(id,name,score,hobby) values(1,'zhangsan',95,1); #表后面插入數(shù)據(jù)
語法 :insert into 表名(列,列,列) values(填入的數(shù)據(jù),‘填入的數(shù)據(jù)’, 填入的數(shù)據(jù));
select * from info where id=2; #條件篩選,where代表的是條件
update info set score=75 where id=6; #修改表中的信息 ,set代表的是列,where代表的是條件
delete from info where name=’test’; #刪除條件為name=‘test’的行
alter table test01 rename info01; #修改表名
alter table info change name username varchar(10) unique key; #修改信息名,并設(shè)置約束
insert into info(id,name,score) values(6,’test’,null); #插入數(shù)據(jù)
insert into hob (sid,hobname) values (2,’聊天’),(3,’運(yùn)動’),(4,’游戲’); #連續(xù)添加
Select * from info where id=6; #條件篩選
delete from info where name=’test’; #刪除條件為name=’test’的那一行的全部信息。
select * from info where 1=1 order by score(asc升序)(desc降序); #排序(升序/降序)
desc info; #查看表結(jié)構(gòu)
select info.name,info.score,hob.hobname from info inner join hob where info.hobby=hob.id;
select username from info where hobby=(select sid from hob where hobname='游泳'); #多表查詢
select a.name,a.score,b.hobname from info a inner join hob b where a.hobby=b.id; #別名查詢
create table infos select a.name,a.score,b.hobname from info a inner join hob b where a.hobby=b.id; #新建表infos內(nèi)容為多表查詢結(jié)果
drop database infos; #刪除infos表
排序:
升序 order by asc
select * from info where 1=1 order by score asc; # where 1=1 order by score 默認(rèn)是asc升序。
降序order by desc
select * from info where 1=1 order by score desc;
===========查詢============
desc info ; 查看info表結(jié)構(gòu)
select #查詢
多表相連查詢
select * from info inner join hob where info.hobby=hob.id;
#表示查詢info表和hob表,inner join是固定語法。
#多表查詢,查看info的name列和紅包列
select info.name,info.score,hob.hobname from info inner join hob where info.hobby
#多表查詢結(jié)果創(chuàng)建為新的表格 名為infos
create tables infos select info.name,info.score,hob.hobname from info inner join hob where info.hobby
#創(chuàng)建別名查詢
select a.name,a.score,b.hobname from info a inner join hob b where a.hobby=b.id;