命令符

常見數(shù)據(jù)類型:
4.1 double浮點型,例如double(5,2)表示最多5位,其中必須有2位小數(shù),即最大值為999.99;
4.2 char固定長度字符串類型;char(10)'abc '
4.3 varchar可變長度字符串類型;varchar(10)'abc'
4.4 text字符串類型4.5 blob二進制類型
4.6 date提起類型,格式為:yyyy-MM-dd;
4.7 time時間類型,格式為:hh:mm:ss;
4.8 datetime日期時間類型,格式為:yyyy-MM-dd hh:mm:ss5. 在MySQL中,字符串類型和日期類型都要用單引號括起來。'Myname' '2018-01-01'。

創(chuàng)建數(shù)據(jù)庫create database 數(shù)據(jù)庫名 character set utf8;或者create database 數(shù)據(jù)庫名 charset=utf8;

使用(切換)數(shù)據(jù)庫use 數(shù)據(jù)庫名

建表命令;
CREATE TABLE 表名(
列名1 列名類型 [約束],
列名2 列名類型 [約束],
.....
列名N 類的類型 [約束]
)

定義學(xué)生表:
id name age email
CREATE TABLE students(
id bigint,
name varchar(20),
email varchar(20),
age int
);

添加一列(本來我已經(jīng)有4個字段,又想添加一個新的字段)
ALTER TABLE 表名 ADD 列名 數(shù)據(jù)類型;

查看表的字段信息
desc 表名。

修改一個表的字段類型
ALTER TABLE 表名 MODIFY 字段名 數(shù)據(jù)類型;

刪除一列

添加一列ALTER TABLE students ADD nums varchar(10);

刪除一列ALTER TABLE students drop nums;

修改表名
RENAME TABLE 原始表名 TO 要修改的表名;

查看表的創(chuàng)建細(xì)節(jié)
SHOW CREATE TABLE 表名;

修改表的字符集gbk
ALTER TABLE students character set gbk;

修改表的列名
ALTER TABLE students change name newname varchar(20);

刪除表
DROP TABLE 表名;

查詢表中的所有數(shù)據(jù)
SELETE * FROM 表名;

插入操作:
INSERT INTO 表名 ( 列名1,列名2 ) VALUES (列值1, 列值2...);

  • 添加多條數(shù)據(jù)(批量插入):

VALUES后面以逗號隔開

INSERT INTO 表名(列名1,列名2....) VALUES(列值1,列值2),(列值1,列值2)....;

更新操作
UPDATE 表名 SET 列名1=列值1, 列名2=列值2... WHERE 列名=值
把所有學(xué)生的分?jǐn)?shù)改為90
UPDATE students SET score=90;
把姓名為zs的學(xué)生分?jǐn)?shù)修改為60
UPDATE students SET score=60 WHERE name='zs';
把姓名為lisi的年齡修改為20和分?jǐn)?shù)修改為70
UPDATE students SET age=30,score=70 WHERE name='lisi';
把wangwu的年齡在原來基礎(chǔ)上+1歲
UPDATE students SET age=age+1 WHERE name='wangwu'

修改數(shù)據(jù)庫密碼步驟:
mysqladmin -u root -p password 123456

刪除操作# 如果不加過濾條件就是刪除所有數(shù)據(jù)
DELETE FROM 表名 [WHERE 列名=值]

刪除所有數(shù)據(jù)

TRUNCATE TABLE 表名;

查詢所有列
SELECT * FROM 表名;

查詢指定的列
SELECT 列名1,列名2 FROM 表名;

條件查詢

  • BETWEEN...AND; 值在什么范圍
  • IN(set);
  • IS NULL; (為空)
  • IS NOT NULL; (不為空)
  • AND; 與
  • OR; 或
  • NOT; 非

查詢性別為男,并且年齡為20的學(xué)生記錄# 添加性別字段
ALTER table students add gender varchar(2);

查詢

SELECT * FROM students WHERE gender='男' AND age=20;
查詢學(xué)號為1001 或者 名為 zs 的記錄
SELECT * FROM students WHERE id=1001 OR name='zs';
查詢學(xué)號為1001 , 1002 ,1003的記錄
SELECT * FROM students WHERE id = 1001 OR id = 1002 OR id = 1003;
SELECT * FROM students WHERE id in (1001,1002,1003);
查詢年齡為null的記錄
SELECT * FROM students WHERE age IS NULL;
查詢年齡在18-20之間的學(xué)生記錄
SELECT * FROM students WHERE age>= 18 AND age<=20;
SELECT * FROM students WHERE age BETWEEN 18 AND 20;
查詢性別非男的學(xué)生記錄
SELECT * FROM students WHERE gender != '男';
查詢姓名不為null的學(xué)生記錄
SELECT * FROM students WHERE name IS NOT NULL;

模糊查詢

  • 根據(jù)指定的關(guān)鍵字進行查詢
  • 使用LIKE關(guān)鍵字后跟通配符
  • 通配符
  • _:任意一個字母
  • %:任意0~n個字母
  • 使用

查詢姓名由5個字母構(gòu)成的學(xué)生記錄可以事先自己添加好各種數(shù)據(jù)# 5個字母就是5個下劃線
SELECT * FROM students WHERE name LIKE '_____';

查詢姓名由5個字母構(gòu)成,并且第5個字母為's'的學(xué)生記錄
SELECT * FROM students WHERE name LIKE '____s';

查詢姓名以'm'開頭的學(xué)生記錄
SELECT * FROM students WHERE name LIKE 'm%';

查詢姓名中第二個字母為'u'的學(xué)生記錄
SELECT * FROM students WHERE name LIKE '_u%';

查詢姓名中包含's'字母的學(xué)生記錄SELECT * FROM students WHERE name LIKE '%s%';

mysql -uroot -p;
進入數(shù)據(jù)庫
SHOW DATABASES;
查看庫

DROP DATABASE 庫名 ;
刪除數(shù)據(jù)庫

USE 數(shù)據(jù)庫;
使用(切換)數(shù)據(jù)庫

SELECT * FROM 表名;
查看表里面的內(nèi)容

SHOW CREATE TABLE 表名;
查看表的創(chuàng)建細(xì)節(jié)

CREATE TABLE 表名;
往表里添加內(nèi)容

DESC 表名;
查看表的結(jié)構(gòu)

CREATE TABLE 表名(
列名1 列名類型 [約束],
列名2 列名類型 [約束],
.....
列名N 類的類型 [約束]
);
建立表格的框架

UPDATE 表名 SET 列名1=列值1, 列名2=列值2... WHERE 列名=值
更新并修改指定條件

SELECT * FROM students WHERE name LIKE 'm%';
查詢姓名以'm'開頭的學(xué)生記錄

查詢性別為男,并且年齡為20的學(xué)生記錄# 添加性別字段
ALTER table students add gender varchar(2);

查詢

SELECT * FROM students WHERE gender='男' AND age=20;

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

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