gpt4 book ai didi

mysql - 使用mysql中的其他表获取随机图像

转载 作者:行者123 更新时间:2023-11-29 02:57:46 28 4
gpt4 key购买 nike

我有两张 table

人物和图像

餐 table 上的人

+----+--------+----------+
| id | name | lastname |
+----+--------+----------+
| 1 | Jhon | Smith |
| 2 | George | Mutt |
| 3 | Peter | Law |
+----+--------+----------+

表格图片

+----+-----------+------------+
| id | id_people | img |
+----+-----------+------------+
| 1 | 1 | demo04.jpg |
| 2 | 2 | test1.jpg |
| 3 | 2 | orange.jpg |
| 4 | 2 | flow.png |
| 5 | 3 | darth.png |
| 6 | 3 | green.png |
+----+-----------+------------+

我需要让所有人随机获得一张图片。

比如好结果吧。

+----------------------------+
1 | Jhon | Smith | demo04.jpg
2 | George | Mutt | orange.jpg
3 | Peter | Law | green.png
+----------------------------+

或者其他结果。

+----------------------------+
1 | Jhon | Smith | demo04.jpg
2 | George | Mutt | test1.jpg
3 | Peter | Law | darth.png
+----------------------------+



I used this sql query

SELECT *
FROM `people` p
INNER JOIN (SELECT *
FROM images
ORDER BY Rand()
LIMIT 1)i
ON i.id_people = p.id
WHERE 1

但只返回一行。

+----+--------+----------+----+-----------+------------+
| id | name | lastname | id | id_people | img |
+----+--------+----------+----+-----------+------------+
| 2 | George | Mutt | 3 | 2 | orange.jpg |
+----+--------+----------+----+-----------+------------+

什么错误?

最佳答案

在这种情况下使用相关子查询而不是 join:

SELECT p.*,
(select i.img
from images i
where i.id_people = p.id
order by rand()
limit 1
) as img
FROM `people` p ;

关于mysql - 使用mysql中的其他表获取随机图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28646257/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com