一、控制臺中查詢命令
默認端口號:3306
查看服務器版本: ?mysql –version
啟動MySQL服務:net start mysql
登錄數據庫:mysql -u root -p
查看當前系統下的數據庫:show databases;
創建數據庫:create 庫名;
使用數據庫:use 庫名;
查看數據庫中的表格:show tables;
刪除數據庫:drop database 庫名;
二、MySQL中
1.創建表:
create table 表名 (字段名1 數據類型1,字段名2 數據類型2,);create table class(name varchar(10) not null comment '班級名稱',teacher varchar(255) not null comment? '老師'
)comment '班級表';
2.修改表
alter table 表名 rename to 新的表名;
3.刪除表
drop table 表名;
4.為列添加id主鍵
alter table classadd id int auto_increment primary key;
5.在列內添加數據
insert into peiqi.class (列1, 列2)values('數據1','數據2');
6.刪除行
DELETE FROM 表名 WHERE 條件;delete from peiqi.class where id = 3;
三、查詢表
1. 基礎查詢語句(SELECT)
?查詢所有列:使用?*
?通配符選擇所有字段。
SELECT * FROM employee;
查詢指定列:顯式指定需要返回的列。
SELECT name, salary FROM employee;
2. 列別名(Alias)
?使用?'別名'
?或?AS '別名'
?為列定義更友好的顯示名稱。
SELECT name '姓名', salary '薪資' FROM employee;
3. 條件過濾(WHERE 子句)
?比較運算符:>
,?<
,?=
,?>=
,?<=
,?!=
?等。
SELECT name FROM employee WHERE salary > 15000;
SELECT name FROM employee WHERE salary = 8000;
邏輯運算符:AND
(同時滿足)、OR
(滿足其一)。
SELECT name FROM employee WHERE salary > 15000 AND salary < 16000;
SELECT name FROM employee WHERE salary > 15000 OR salary < 5000;
?范圍查詢(BETWEEN):閉區間匹配,包含邊界值。
SELECT name FROM employee WHERE salary BETWEEN 15000 AND 16000;
空值判斷(IS NULL / IS NOT NULL):
SELECT name FROM employee WHERE location IS NOT NULL;
4. 條件分支(CASE WHEN)
?根據條件生成新列,類似編程中的?if-else
。
SELECT name, CASE WHEN salary > 10000 THEN '高工資' ELSE '低工資' END AS '工資水平'
FROM employee;
?5. 模糊查詢(LIKE 和通配符)
?%
:匹配任意多個字符(包括零個)。
-- 包含“萬”的名字(如“萬某”、“張某萬”)
SELECT name FROM employee WHERE name LIKE '%萬%';
-- 姓“李”的名字(如“李四”)
SELECT name FROM employee WHERE name LIKE '李%';
_
:匹配單個字符。
-- 名字長度為3且以“萬”結尾(如“張三萬”)
SELECT name FROM employee WHERE name LIKE '_ _萬';
?6. 注釋語法
?使用?#
?添加單行注釋(部分數據庫支持,如 MySQL)。
# 注釋內容
7.關鍵注意事項
-
BETWEEN 的范圍:包含邊界值,等價于?
>=
?和?<=
。 -
LIKE 通配符:
%
?匹配任意長度字符,_
?匹配單個字符。 -
NULL 判斷:必須使用?
IS NULL
?或?IS NOT NULL
,而非?= NULL
。