gpt4 book ai didi

sql - 如何使用 sql 连接简化此查询?

转载 作者:行者123 更新时间:2023-11-29 14:12:03 25 4
gpt4 key购买 nike

my_table 有 4 列:id integer, value integer, value2 integer, name character varying

我想要所有记录:

  1. 与名称为“a_name”的记录具有相同的值2
  2. 有一个字段值低于名称为“a_name”的记录之一

我通过以下查询获得了令人满意的结果:

select t.id 
from my_table as t
where t.value < ( select value from my_table where name = 'a_name')
and s.value2 = (select value2 from my_table where name = 'a_name');

但是是否可以使用 sql 连接来简化此查询?

加入同 table 在我的脑海里还是太复杂了。我试着用这个例子来理解。

到目前为止,我所尝试的是一个充满重复的结果:

select t2.id 
from my_table as t
inner join my_table as t2 on t2.value2 = t.value2
where t2.value < ( select value from my_table where name = 'a_name');

最佳答案

我认为这会解决您的问题。

select t1.id
from my_table as t1
join my_table as t2
on t1.value2 = t2.value2
and t2.name = 'a_name'
and t1.value < t2.value

关于sql - 如何使用 sql 连接简化此查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15583824/

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