因为在日常工作学习中经常忘记mysql的一些语句、关键字、操作等内容,所以最近抽取时间写了以下关于mysql相关内容。相当于一本字典吧
重置mysql密码
数据类型
运算符
常用函数
数据完整性
数据库的基本操作
对表本身的操作
对表中数据的操作
本文
多表连接
索引
视图
预处理SQL语句
自定义函数与存储过程
在MySQL中编程
子查询就是一个嵌套在select、insert、update、delete语句(或者其它子查询)中的查询。
注:
mysql> desc user;
+-------+---------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------------+------+-----+---------+----------------+
| id | int | NO | PRI | NULL | auto_increment |
| name | char(10) | YES | | NULL | |
| sex | enum('f','m') | YES | | NULL | |
+-------+---------------+------+-----+---------+----------------+
3 rows in set (0.01 sec)mysql> desc commodity;
+---------+-----------+------+-----+--------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+-----------+------+-----+--------------+----------------+
| id | int | NO | PRI | NULL | auto_increment |
| price | int | NO | | NULL | |
| name | char(128) | YES | | 匿名商品 | |
| user_id | int | YES | | NULL | |
+---------+-----------+------+-----+--------------+----------------+
4 rows in set (0.01 sec)
mysql> select * from user;
+----+--------+------+
| id | name | sex |
+----+--------+------+
| 1 | 铁子 | m |
| 2 | 嘎子 | m |
| 3 | 潘子 | m |
| 4 | 翠花 | f |
| 5 | 阿秀 | f |
+----+--------+------+
5 rows in set (0.00 sec)mysql> select * from commodity;
+----+-------+--------+---------+
| id | price | name | user_id |
+----+-------+--------+---------+
| 1 | 100 | 手机 | 1 |
| 2 | 299 | 电脑 | 1 |
| 3 | 18990 | 假酒 | 3 |
| 4 | 18990 | 中华 | 3 |
| 5 | 18 | 中华 | 2 |
+----+-------+--------+---------+
5 rows in set (0.00 sec)
# 查看id为3的user的购买数量
select name, (select count(1) from commodity where user_id = 3) 购买数量from userwhere id = 3;
+--------+--------------+
| name | 购买数量 |
+--------+--------------+
| 潘子 | 2 |
+--------+--------------+
1 row in set (0.00 sec)
# 查询购买单品价格大于100的用户的姓名和性别
select name, sexfrom userwhere id in (select user_id from commodity where price > 100);
+--------+------+
| name | sex |
+--------+------+
| 铁子 | m |
| 潘子 | m |
+--------+------+
2 rows in set (0.00 sec)
# 查询购买总价大于1000的人
select name as 姓名,sex as 性别
from user
where id in (select user_id from (select user_id,sum(price) total from commodity group by user_id) as newTable al > 100);
+--------+--------+
| 姓名 | 性别 |
+--------+--------+
| 铁子 | m |
| 潘子 | m |
+--------+--------+
2 rows in set (0.00 sec)
本文发布于:2024-02-02 07:26:47,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170683000842268.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |