gpt4 book ai didi

sql - 限制 SQL JOIN

转载 作者:太空狗 更新时间:2023-10-30 01:40:00 25 4
gpt4 key购买 nike

我正在尝试限制以下 SQL 语句。

SELECT expense.*, transaction.* FROM expense
INNER JOIN transaction ON expense_id = transaction_expense_id

我想做的是限制“父”行的数量。 IE。如果我执行 LIMIT 1,我只会收到一个费用项目,但仍会收到与之相关的所有交易。

这将如何实现?

在这个阶段,如果我执行 LIMIT 1,我会得到一笔费用,并且只有一笔交易。

最佳答案

所以假设我们可以排除用户表,它可以重写为:

select * from expense, transaction where expense_id = transaction_expense_id

现在如果你想应用一个限制,你可以这样做:

select * from expense, transaction where expense_id = transaction_expense_id and 
expense_id in (select expense_id from expense limit 1)

这会如你所愿吗?显然,您需要谨慎考虑 expense_id 返回的顺序,因此您可能希望使用 ORDER BY。

编辑:考虑到您在下面的评论中描述的 MySQL 限制,也许这会起作用:

select * from (select id from expense order by WHATEVER limit 1) as t1, transaction where expense_id=transaction_expense_id;

关于sql - 限制 SQL JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/494974/

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