【发布时间】:2009-07-28 14:33:35
【问题描述】:
我正在努力使用 PostgreSQL 创建涉及聚合的 SQL 查询。请考虑以下表格:
CREATE TABLE thing (
id INT NOT NULL PRIMARY KEY,
price NUMERIC(10,2) NOT NULL,
description VARCHAR(255) NOT NULL,
url VARCHAR(255) NOT NULL,
location_id INT NOT NULL REFERENCES location(id)
)
CREATE TABLE location (
id INT NOT NULL PRIMARY KEY,
type INT NOT NULL,
name VARCHAR(255) NOT NULL
)
现在,我想使用 location.type = xxx 获取每个位置的所有价格最低的事物记录。
类似:
SELECT min(price) FROM thing
INNER JOIN location ON (thing.location_id = location.id)
WHERE type = xxx
GROUP BY location_id
这将为我列出类型为 xxx 的每个位置的最低价格,但是如何从表中获取这些列的行(或其主键)?
【问题讨论】:
标签: sql postgresql