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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL的一些简单语句

發布時間:2023/12/2 数据库 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL的一些简单语句 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

mysql 統計 表的數量:SELECT COUNT(1) FROM information_schema.TABLES WHERE TABLE_SCHEMA = '你的數據庫';


MySQL的一些基礎語句:

行是記錄 列是字段

創建庫

CREATE DATABASE [IF NOT EXISTS] 數據庫名 [參數[ 參數] [ 參數]...];

參數:

CHARACTER SET 碼表名

COLLATE 校對規則名, 詳見文檔10.10.1

顯示庫

SHOW DATABASES;

顯示數據庫創建語句

SHOW CREATE DATABASE 數據庫名;

修改庫

ALTER DATABASE 數據庫名[ 參數[ 參數][ 參數]...];

注意: 不能改數據庫的名字

刪除庫

DROP DATABASE [IF EXISTS] 數據庫名;

操作表之前使用需要先確定使用哪個數據庫

USE 數據庫名

創建表

CREATE TABLE 表名(列名 類型[,列名 類型][,列名 類型]...);

查看所有表

SHOW TABLES;

查看表的創建語句

SHOW CREATE TABLE 表名;

顯示表結構

DESC 表名;

修改表名

RENAME TABLE 原表名 TO 新表名;

修改字符集

ALTER TABLE 表名 CHARACTER SET 字符集名;

刪除表

DROP TABLE 表名;

追加列

ALTER TABLE 表名 ADD 列名 類型[,列名 類型][,列名 類型]...;

修改列類型

ALTER TABLE 表名 MODIFY 列名 類型[,列名 類型][,列名 類型]...;

修改列

ALTER TABLE 表名 CHANGE COLUMN 原列名 新列名 類型;

刪除列

ALTER TABLE 表名 DROP 列名;

插入語法:

INSERT INTO 表名[(列名[,列名]...)] VALUES(值[,值]...);

注意事項:

插入值類型必須與對應列的數據類型一致

數據不能超出長度

插入值得為之必須與列名順序一致

字符和日期數據要放在單引號中

插入空值使用null

如果不指定插入哪一列, 就是插入所有列

中文數據

由于默認碼表是utf8, 而cmd.exe的碼表是gbk, 在插入中文數據的時候會報錯, 所以我們需要修改客戶端碼表

先查看系統變量: SHOW VARIABLES LIKE 'character%';

修改客戶端碼表: SET character_set_client=gbk;

修改輸出數據的碼表: SET character_set_results=gbk;

修改語法

UPDATE 表名 SET 列名=值[,列名=值]...[WHERE 條件語句];

注意事項

WHERE子句選擇滿足條件的行進行更新, 如果不寫, 則更新所有行

刪除語法

DELETE FROM 表名 [where 條件語句]

注意事項

如果不加where子句, 將刪除表中所有記錄

delete只能用作刪除行, 不能刪除某一列的值, 需要用update

在delete和update的時候需要注意表與表之間的關聯關系

刪除表中所有數據可以使用: TRANCATE 表名, 這種方式會刪除舊表重新創建, 在數據較多的時候使用

備份數據庫

輸入quit退出mysql, 在cmd.exe中輸入:

mysqldump –u用戶名 –p密碼 數據庫名 > 文件名

恢復數據庫

進入mysql.exe之后, 使用數據庫之后

source 文件名

操作數據(查詢)

DISTINCT語法

SELECT [DISTINCT] 列名[, 列名]... FROM 表名

注意事項

*可以替代列名, 表示所有列, 但是通常我們為了提高代碼的可讀性, 不使用*

DISTINCT為過濾重復記錄

如果DISTINCT后面跟多列, 是過濾掉多列合并之后的重復

列名表達式——語法

SELECT 列名|表達式[,列名|表達式]... FROM 表名

注意事項

表達式只是顯示時起作用, 不會改變數據庫中的值

AS——

SELECT 列名 AS 別名 FROM 表名

注意事項

起別名時AS可以省略

不會改變數據庫中的值

WHERE——

語法

SELECT 列名 FROM 表名 [WHERE 條件語句]

WHERE子句中的運算符

比較運算符

>, <, >=, <=, =, <>

注意不等于和Java中不同, 是<>

BETWEEN ... AND ...

某一區間內的值, 從 ... 到 ...

IN(列表)

在列表之中, 例: in(1,2,3) 代表1或2或3

LIKE(表達式)

模糊查詢, %代表多個字符, _代表單個字符

IS NULL

判斷是否為NULL

? 邏輯運算符

AND &&

與, 兩邊都為TRUE結果為TRUE

OR ||

或, 一邊為TRUE結果就為TRUE

NOT !

非, 將表達式結果取反

ORDER BY——

語法

SELECT 列名 FROM 表名 ORDER BY 列名 ASC|DESC;

注意事項

ORDER BY 指定排序的列名可以是表中的列名, 也可以是SELECT語句后面起的別名

ASC為升序, DESC為降序

ORDER BY應在查詢語句的結尾

COUNT函數——

語法

SELECT COUNT(*)|COUNT(列名) from 表名 [WHERE 條件語句]

注意事項

COUNT(列名)的方式是統計指定列中有多少條記錄, 不包括值為NULL的

COUNT(*)則是統計表中有多少條數據

COUNT(DISTINCT 列名) 統計不重復的記錄數

如果加上WHERE子句, 則是統計滿足條件的記錄

總結

以上是生活随笔為你收集整理的MySQL的一些简单语句的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。