mysql共同好友练习题
时间: 2023-08-08 09:11:35 浏览: 77
共同好友练习题的解决方法如下:
首先,我们需要建立一个好友表,其中包含每个用户的ID和他们的好友ID。可以使用以下代码创建这个表:
WITH t AS (
SELECT user1_id AS user_id, user2_id AS friend
FROM Friendship
UNION ALL
SELECT user2_id, user1_id
FROM Friendship
)
接下来,我们可以使用以下代码来找到具有共同好友的用户对,并计算共同好友的数量:
SELECT t1.user_id AS user1_id, t2.user_id AS user2_id, COUNT(DISTINCT t1.friend) AS common_friend
FROM t t1
LEFT JOIN t t2 ON t1.user_id < t2.user_id AND t1.friend = t2.friend
WHERE (t1.user_id, t2.user_id) IN (
SELECT * FROM Friendship
)
GROUP BY t1.user_id, t2.user_id
HAVING COUNT(DISTINCT t1.friend) >= 3
这段代码将返回具有至少3个共同好友的用户对,其中包括每个用户的ID和共同好友的数量。
希望这个解决方案能够帮助你解决问题![1][2][3]
相关问题
mysql部门员工练习题
MySQL是一个关系型数据库管理系统,它常用于存储和管理企业的数据。关于部门员工的练习题,可能涉及到查询、更新、插入和删除数据操作,以及SQL语句的使用。以下是一些基本的练习题示例:
1. **创建表:**
- 创建一个包含员工信息的表,如`employees`,包括字段:id(主键)、name、department_id(外键关联到`departments`表)、position、hire_date等。
2. **查询练习:**
- 查询特定部门的所有员工(例如,获取所有在"销售部"的员工)。
- 根据入职日期排序员工列表。
- 统计每个部门的员工数量。
3. **更新操作:**
- 更新员工的职位或部门。
- 将所有2020年入职的员工薪资提高10%。
4. **插入和删除:**
- 插入一个新的员工记录。
- 删除某个员工(根据ID)。
5. **联接查询:**
- 查询一个部门的所有员工及其经理的详细信息。
- 获取部门中工资最高的员工。
6. **子查询和聚合函数:**
- 使用子查询找出平均工资最高的部门。
- 计算每个员工所在部门的总工资。
**相关问题--:**
1. 如何在MySQL中使用JOIN语句连接两个表?
2. 怎样在MySQL中设置外键约束?
3. 如何使用MySQL的存储过程或触发器来自动化某些操作?
这些题目旨在帮助你熟悉MySQL的基本操作和SQL查询语法,如果你需要更详细的解答或者具体的问题实例,请告诉我。
mysql正则表达式练习题
MySQL正则表达式练习题是一种通过使用正则表达式来查询数据库中特定数据的练习。以下是一些MySQL正则表达式练习题的例子:
1. 查找name字段中以元音字符开头或以'ok'字符串结尾的所有数据:
```
SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';
```
2. 查找email字段中包含'gmail'或'yahoo'的所有数据:
```
SELECT email FROM person_tbl WHERE email REGEXP 'gmail|yahoo';
```
3. 查找phone字段中以'1'开头并且长度为11位的所有数据:
```
SELECT phone FROM person_tbl WHERE phone REGEXP '^1[0-9]{10}$';
```
4. 查找address字段中包含数字的所有数据:
```
SELECT address FROM person_tbl WHERE address REGEXP '[0-9]+';
```
5. 查找name字段中包含至少一个空格的所有数据:
```
SELECT name FROM person_tbl WHERE name REGEXP ' ';
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)