当前位置: 首页 > news >正文

MYSQL指令合集

 一、基础 CRUD(增删查改)

1. 查询(SELECT)

SELECT * FROM table_name;
SELECT name, age FROM users;
SELECT * FROM users WHERE id = 1;
SELECT * FROM users WHERE name = 'Elias';

2. 插入(INSERT)

INSERT INTO users(name, age) VALUES ('Jack', 20);
INSERT INTO users(id, name, age) VALUES (1, 'Lily', 22);

插入多条:

INSERT INTO users(name, age)
VALUES ('A', 10), ('B', 20), ('C', 30);

3. 更新(UPDATE)

UPDATE users SET age = 25 WHERE id = 1;
UPDATE users SET name = 'Mike', age = 18 WHERE id = 2;

4. 删除(DELETE)

DELETE FROM users WHERE id = 1;
DELETE FROM users WHERE age < 10;

 二、表的创建与修改

1. 创建表(包含主键)

CREATE TABLE users (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50) NOT NULL,age INT
);

2. 删除表

DROP TABLE users;

3. 修改表(ADD / DROP / MODIFY)

增加字段:

ALTER TABLE users ADD email VARCHAR(100);

删除字段:

ALTER TABLE users DROP COLUMN email;

修改字段类型:

ALTER TABLE users MODIFY age INT NOT NULL;

修改表名:

ALTER TABLE users RENAME TO members;

 三、条件查询(WHERE)

常用条件:

SELECT * FROM users WHERE age >= 18;
SELECT * FROM users WHERE age BETWEEN 18 AND 30;
SELECT * FROM users WHERE name LIKE 'A%';   -- A 开头
SELECT * FROM users WHERE name LIKE '%abc%'; -- 包含 abc
SELECT * FROM users WHERE age IN (18, 20, 25);
SELECT * FROM users WHERE age IS NULL;
SELECT * FROM users WHERE age IS NOT NULL;

复合条件:

SELECT * FROM users WHERE age > 18 AND name = 'Jack';
SELECT * FROM users WHERE age < 18 OR age > 60;

 四、排序(ORDER BY)

SELECT * FROM users ORDER BY age DESC;
SELECT * FROM users ORDER BY age ASC, name ASC;

 五、分页(LIMIT)

SELECT * FROM users LIMIT 10;        -- 前 10 条
SELECT * FROM users LIMIT 5 OFFSET 10;

前端常用分页:

SELECT * FROM users LIMIT (page-1)*size, size;

 六、连接查询(JOIN)

1. 内连接(常用)

SELECT u.name, o.order_id
FROM users u
JOIN orders o ON u.id = o.user_id;

2. 左连接(主表全部 + 匹配)

SELECT u.name, o.order_id
FROM users u
LEFT JOIN orders o ON u.id = o.user_id;

3. 右连接

SELECT u.name, o.order_id
FROM users u
RIGHT JOIN orders o ON u.id = o.user_id;

七、分组统计(GROUP BY + HAVING)

求每个年龄段人数:

SELECT age, COUNT(*) 
FROM users 
GROUP BY age;

统计后过滤(HAVING):

SELECT age, COUNT(*) AS cnt
FROM users
GROUP BY age
HAVING cnt >= 2;

求平均值:

SELECT AVG(age) FROM users;
SELECT SUM(age), MIN(age), MAX(age) FROM users;

 八、子查询

SELECT * FROM users 
WHERE age > (SELECT AVG(age) FROM users);
SELECT name FROM users 
WHERE id IN (SELECT user_id FROM orders);

 九、索引(提高查询速度)

1. 创建索引

CREATE INDEX idx_name ON users(name);

2. 删除索引

DROP INDEX idx_name ON users;

3. 唯一索引

CREATE UNIQUE INDEX idx_email ON users(email);

 十、约束(提高数据可靠性)

主键

PRIMARY KEY (id)

唯一

UNIQUE(email)

外键

CONSTRAINT fk_user
FOREIGN KEY(user_id) REFERENCES users(id)

 十一、事务(保证数据一致性)

开启事务:

START TRANSACTION;

修改:

UPDATE users SET age = age - 1 WHERE id = 1;
UPDATE users SET age = age + 1 WHERE id = 2;

提交:

COMMIT;

回滚:

ROLLBACK;

十二、数据库/表管理

切换数据库:

USE dbname;

查看所有数据库:

SHOW DATABASES;

查看所有表:

SHOW TABLES;

查看表结构:

DESC users;

十三、字符集(防止中文乱码)

SET NAMES utf8mb4;

或 C++ 设置:

mysql_options(conn, MYSQL_SET_CHARSET_NAME, "utf8mb4");

一个“真实项目常用 SQL 组合”

创建用户表 + 插入用户 + 查询用户 + 登录验证

CREATE TABLE user(id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50) UNIQUE,password VARCHAR(100),create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);INSERT INTO user(name, password) VALUES ('Elias', '123456');SELECT id, name FROM user WHERE name='Elias' AND password='123456';
http://www.dtcms.com/a/615023.html

相关文章:

  • 北京企业网站百度wordpress结构化数据插件 sign 检测失败
  • 网站建设需要注意哪些事项前端网站开发课程
  • 周期购那个网站做的比较好太原seo整站优化
  • 加强网站安全建设说明报告范文湖南长沙招聘
  • 精品成品网站源码关键词优化易下拉效率
  • 做网站前期框架图怎么做解析视频网站
  • 终端能力等级Category介绍
  • 计算机网站建设论文总结农村自建房设计图 户型图
  • 做爰网站下载地址品牌如何推广
  • 云南文山网站建设制作WordPress不使用MySQL数据库
  • 全椒县城乡建设局网站纯注册app拉新平台
  • 合肥家居网站建设怎么样广告联盟平台系统
  • PID调参实战:Ziegler–Nichols(Z-N)搜索方案全解析
  • AES加密,前端加密,后端解密
  • SK Keyfoundry增加Sic产能
  • 温州建站平台wordpress 七牛云
  • Spring Boot与MyBatis
  • 大区直播间网站开发制作研究网站开发意义
  • 西安网站建设价格明细北京西城注册公司
  • 提升知识索引性能的技术手段
  • 【数据结构】【xjtuse】八股文单元小测
  • 无锡网站建设开发网站建设终身不用维护
  • 苏州网站建设排名安卓开发课程
  • 前端工程化未来,模块联邦与微前端
  • 广州网站建站公司如何做社群营销模式
  • 网站开发 案例详解儋州网站建设培训学校
  • Java对象创建与生命周期:贫道吕洞宾的造物主指南
  • 网站有源码 怎么建设一个人做网站需要多久
  • JavaEE初阶——多线程3(案例)
  • 怎样做28网站代理池州网站建设兼职