gpt4 book ai didi

mysql - sql语句怎么写?

转载 作者:可可西里 更新时间:2023-11-01 08:36:12 26 4
gpt4 key购买 nike

我的数据库中有如下 3 个表。这用于像 foursqure 这样的应用程序。我需要帮助来解决我在本文底部提出的编写 sql 语句的问题。

谢谢

用户详情

user_id | fname
----------------
1 | Losh
8 | Dush
9 | Rosh
10 | NELL

friend

user_idf |user_idff
----------------
1 | 8
8 | 9
10 | 1

签到

check_in_id |user_id | place    | date
--------------------------------------------
1 | 8 | Hotel | 01/01/2012
2 | 9 | Home | 05/01/2012
3 | 1 | Junction | 08/01/2012
4 | 1 | Rest | 11/01/2012
5 | 9 | Hotel | 15/01/2012
6 | 8 | Home | 15/01/2012

我得到用户与 8 的 friend 以及用户 8 的详细信息和签到地点,如下所示

SELECT a.`user_id`, a.`fname` , b.*
FROM `user_details` a, `check_in` b
WHERE (b.user_id = 8
OR b.user_id in (select user_idf from friends where user_idff = '8' union select user_idff from friends where user_idf = '8')) AND b.user_id = a.user_id

我如何编写 sql 来选择谁是 8 的 friend 和用户 8 的详细信息以及代替这些用户的最后检查

解释::

我寻求这样的答案

user id    name     place   date
1 LOSH Rest 11/01/2012
8 DUSH HOME 15/01/2012
9 ROSH HOTEL 15/01/2012

最佳答案

将它加入到返回的表中:

(SELECT `user_id`, `place` FROM Check_in GROUP BY user_id ORDER BY `date` DESC)

这应该为每个用户提供一个条目,并且由于它按日期反向排序,因此该条目应该是最新的。

But when i group by it gives me the first dates not the latest date

这个怎么样:

(SELECT user_id, place
FROM (SELECT * FROM Check_in ORDER BY `date` DESC) tmp
GROUP BY user_id)

关于mysql - sql语句怎么写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11752424/

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