表user_contest_image
:
+----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| user_id | int(11) | YES | MUL | NULL | |
| filename | varchar(255) | YES | | NULL | |
| title | varchar(255) | YES | | NULL | |
+----------+--------------+------+-----+---------+----------------+
表image_vote
:
+----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| image_id | int(11) | YES | MUL | NULL | |
| ip | varchar(255) | YES | | NULL | |
+----------+--------------+------+-----+---------+----------------+
image_vote.image_id
是 user_contest_image.id
的外键。
我正在尝试从 user_contest_image
获取所有记录,并按相关 image_vote.image_id
的重复顺序对它们进行排序。
示例数据:
user_contest_image
id user_id filename title
1 1 image_1.png imageTitle1
2 2 image_2.png imageTitle2
image_vote
id image_id ip
1 2 127.0.0.1
2 1 127.0.0.1
3 2 127.0.0.1
两次 image_id
的值为 2
,一次为 1
。
我正在尝试这样排序结果:
user_contest_image.id user_contest_image.filename
2 image_2.png
1 image_1.png
我没有提供我的工作示例,因为我真的不知道我应该怎么做。
最佳答案
加入表格,按图像 ID 分组,添加 COUNT(image_vote.id)
字段,并按该字段排序。
关于mysql - 如何通过重复第二个表中的列值来对一个表中的记录进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56155866/