我想创建一个sql查询,我想从一个表中选择所有字段,并从另一个表中选择一个作为外键的id。SQL加入以选择具有一对多关系的查询
我几乎到了那里,但这返回所有图像id。
select p1.pub_id,i1.image_id
from pub p1, images i1
where p1.pub_id = i1.pub_id
我只需要一个图像记录,最新的一个。任何想法都会很棒。我花了很多年试图让我的头脑在这附近。
我想创建一个sql查询,我想从一个表中选择所有字段,并从另一个表中选择一个作为外键的id。SQL加入以选择具有一对多关系的查询
我几乎到了那里,但这返回所有图像id。
select p1.pub_id,i1.image_id
from pub p1, images i1
where p1.pub_id = i1.pub_id
我只需要一个图像记录,最新的一个。任何想法都会很棒。我花了很多年试图让我的头脑在这附近。
所以你花了几个小时无法做到这一点,一旦你把它发布在这里,你可以解决它。无论如何。
select p1.pub_id, i1.image_id
from pub p1, images i1
where i1.image_id = (select max(image_id) from images where pub_id = p1.pub_id)
select p1.pub_id,i1.image_id from pub p1, images i1where p1.pub_id = i1.pub_id(+)
支持Oracle
OP对这个问题提出了拙劣的问题,只是在评论中解释了完整的要求,但唉,一个OUTER JOIN与他们想要的完全相反。 – APC
你必须有其image_id(许多人),它应该有一些条件。 – sufleR
你可能会提供更多关于你的表格的信息 – sailingthoms
你真的应该习惯使用明确的'JOIN's –