【发布时间】:2016-07-15 20:11:32
【问题描述】:
我需要选择表格的 a 信息以及一系列特定数字,也就是说,对于每个 a.id 我想显示该范围内的每个数字, 使用 PostgreSQL 8.4。
假设范围是数字 123、175 和 192,这将是我想要的结果:
范围a.id
123 1
175 1
192 1
123 2
175 2
192 2
123 3
175 3
192 3
我知道我可以使用
select range, a.id
from a
inner join generate_series(1, 100, 1) range on true
但问题是,我不想使用generate_series,因为我的范围是随机数,还有其他方法吗?
可能是这样的:
select range, a.id
from a
where range in (123, 175, 192)
group by range, a.id;
【问题讨论】:
-
我想我现在明白了。因此,您有一个名为
a的表,其中包含一个id列,并且您正在尝试返回具有这些值的范围?哪个范围应该与价值相配?最后一个查询有 5 个范围 - 如果表a只有 3 行,为什么 123 会与 1 一起使用? -
对于每个
a.id,我想显示范围的每个数字 -
@sgeddes 我刚刚意识到我写了一个我想要的错误示例,我现在已经更正了。
标签: sql postgresql postgresql-8.4