[英]select multiple columns with alias and group by alias in Postgresql
我對此查詢有疑問。 我想選擇ID字段,然后日期時間戳字段具有別名,但按別名分組。 如果不包括ID字段,我將無法做到這一點,但是那樣就無法保持group by提供的唯一性。 這是我的查詢不起作用。 我收到有關需要包含ID字段的錯誤。
SELECT id, to_timestamp(start_date)::date as sdate FROM events WHERE end_date > 1349306845 GROUP BY sdate ORDER BY sdate ASC LIMIT 20
更新:使用下面的函數后,它可以根據需要工作。
SELECT max(id) as id, to_timestamp(start_date)::date as sdate FROM events WHERE end_date > 1349306845 GROUP BY sdate ORDER BY sdate ASC LIMIT 20
SELECT id, to_timestamp(start_date)::date as sdate
FROM events
WHERE start_date IN
(
SELECT start_date as sdat
FROM events
WHERE end_date > 1349306845
GROUP BY sdat
ORDER BY sdat
ASC LIMIT 20
)
SELECT id, to_timestamp(start_date)::date as sdate
FROM events
WHERE start_date IN
(
SELECT start_date as sdat
FROM events
WHERE end_date > 1349306845
GROUP BY sdat
)
ORDER BY sdate
ASC LIMIT 20
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.