MYSQL语句

查询数据库列表

SHOW DATABASES;

– 创建数据库

CREATE DATABASE corderhub;

– 选中数据库

USE corderhub;

CREATE TABLE users(
`name` VARCHAR(20),
age INT,
height DOUBLE
);

– 插入数据

INSERT INTO users VALUES('admin',18,1.88);
INSERT INTO users VALUES('admin123',20,1.78);

– 查询记录

SELECT * FROM users;

– 查询所有的数据库

SHOW DATABASES;

– 使用数据库

USE corderhub;

– 查看当前正在使用的数据库

SELECT DATABASE();

– 创建数据库

CREATE DATABASE bilibili; 

– 如果不存在就创建

CREATE DATABASE IF NOT EXISTS bilibili;

–删除数据库

DROP DATABASE corderhub;

–如果存在就删除

DROP DATABASE IF EXISTS corderhub;

– 选中bilibili

USE bilibili;

– 查询选中数据库下的所有表

SHOW TABLES;

–创建数据库表

CREATE TABLE IF NOT EXISTS `user`(
`name` VARCHAR(10),
age INT,
height double
);

– 查询表的结构

DESC `user`;

– 创建一个完整的表

CREATE TABLE IF NOT EXISTS`goods`(
id INT PRIMARY KEY AUTO_INCREMENT,
`name` VARCHAR(10) UNIQUE,
price DOUBLE NOT NULL,
-- 创建时间 默认值 是当前的时间
createAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

– 插入记录

INSERT INTO `goods` VALUES(null,'华为',4999.5,null);
INSERT INTO `goods`(`name`,price) VALUES('小米',4999.5);

– 删除数据库表

DROP TABLE `user`;
DROP TABLE IF EXISTS `user`;

– 修改表名称

ALTER TABLE `goods` RENAME TO `products`;
-- 添加一个新的字段
ALTER TABLE `products` ADD updateAt TIMESTAMP;
ALTER TABLE `products` ADD `publishTime` DATETIME;

–删除字段

ALTER TABLE `products` DROP `publishTime`;
-- 修改字段的名称(类型也可以修改)
ALTER TABLE `products` CHANGE updateAt updateTime DATETIME;
-- 修改字段的数据类型
ALTER TABLE `products`  MODIFY updateTime TIMESTAMP;
DESC `products`;

–选中数据库

USE bilibili;

–查询表

SHOW TABLES;

–新增数据

INSERT INTO products VALUES(null,'Opple',3999,null,'2022-06-16 09:07:22');
INSERT INTO products(`name`,price) VALUES('vivo',3999);
INSERT INTO products SET `name` = '苹果',price=4999;
INSERT INTO products SET `name` = 'huawei',price=4999;
INSERT INTO products SET `name` = 'sanxing',price=4999;

–删除数据

DELETE FROM products;

–精确删除

DELETE FROM products WHERE id = 9;

–修改数据

UPDATE products SET `name` = '苹果' WHERE id = 7;

–查询表中所有数据的所有字段

SELECT * FROM products;

–查询制定的字段

SELECT `name`,price FROM products;

–查询指定的字段 别名

SELECT `name` as '名称',price '价格' FROM products;

–查询价格

# 查询价格小于1000的手机
SELECT * FROM `products` WHERE price < 1000;
# 查询价格大于等于2000的手机
SELECT * FROM `products` WHERE price >= 2000;
# 价格等于3399的手机
SELECT * FROM `products` WHERE price = 3399;
# 价格不等于3399的手机
SELECT * FROM `products` WHERE price != 3399;

– && AND

SELECT * FROM `products` WHERE `name` = '华为' && `price` < 2000;
SELECT * FROM `products` WHERE `name` = '华为' AND `price` < 2000;

– || OR

SELECT * FROM `products` WHERE `name` = '华为' || `price` > 2000;
SELECT * FROM `products` WHERE `name` = '华为' OR `price` > 2000;

SELECT * FROM `products` WHERE `name` IN('苹果','vivo');

–模糊查询

SELECT * FROM `products` WHERE `name` LIKE '%i%';

-- ORDER BY 排序 ASC:升序排字段;DESC:降序排字段;
SELECT * FROM `products` ORDER BY id DESC;
SELECT * FROM `products` ORDER BY id ASC;

– 分页查询 (page-1) * num LIMIT 数量 OFFSET 偏移值

SELECT * FROM `products` LIMIT 2 OFFSET 0;
SELECT * FROM `products` LIMIT 2 OFFSET 2;
SELECT * FROM `products` LIMIT 2 OFFSET 4;
-- LIMIT 偏移值,数量
SELECT * FROM `products` LIMIT 0,2;
SELECT * FROM `products` LIMIT 2,2;
SELECT * FROM `products` LIMIT 4,2;

–聚合函数

-- 平均数
SELECT AVG(price) FROM `products`;

-- 最大值
SELECT Max(price) FROM `products`;

-- 最小值
SELECT Min(price) FROM `products`;

-- 求和
SELECT SUM(price) FROM `products`;
-- 记录数
SELECT COUNT(*) FROM `products`;、

CREATE TABLE IF NOT EXISTS `user`(
id INT PRIMARY KEY AUTO_INCREMENT,
`name` VARCHAR(10),
age INT,
sex CHAR(2) DEFAULT '男',
height DOUBLE
);

INSERT INTO `user` VALUES(null,'张三',18,'男',188);
INSERT INTO `user` VALUES(null,'李四',18,'女',177);
INSERT INTO `user` VALUES(null,'王五',18,'男',168);
INSERT INTO `user` VALUES(null,'赵六',18,'女',170);
INSERT INTO `user` VALUES(null,'马奇',18,'男',155);
INSERT INTO `user` VALUES(null,'周扒皮',18,'女',160);
INSERT INTO `user` VALUES(null,'王麻子',18,'男',170);

– Group By 分组

SELECT sex, COUNT(*) FROM `user` GROUP BY `sex`;

SELECT
	sex '性别',
	COUNT(*) '数量',
	AVG( height ) '平均身高',
	MAX( height ) '最大身高',
	MIN( height ) '最小身高' 
FROM
	`user` 
GROUP BY
	`sex`;
	
-- HAVING 对分组的结果再进行筛选 
SELECT
	sex '性别',
	COUNT(*) '数量',
	AVG( height ) avgHeight,
	MAX( height ) '最大身高',
	MIN( height ) '最小身高' 
FROM
	`user`
GROUP BY
	`sex` HAVING avgHeight > 170;
	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值