gpt4 book ai didi

python - 如何仅从时间戳列中检索年份?

转载 作者:行者123 更新时间:2023-11-29 12:59:42 24 4
gpt4 key购买 nike

我有以下在 Postgres 9.3 上正确运行的查询:

select distinct date_part('year', date_created) 
from "Topic";

目的是仅返回列 date_created 中的不同年份,该列是这样创建的:

date_created  | timestamp with time zone | not null default now()

我需要把它变成一个 SQLAlchemy 查询,但我写的是在 date_created 而不是年份上选择不同的,并返回整行,而不仅仅是不同的值:

topics = Topic.query.distinct(func.date_part('YEAR', Topic.date_created)).all()

如何从表 Topic 中获取不同的年份?

最佳答案

这里有两种变体:

使用 ORM:

from sqlalchemy import func, distinct

result = session.query(distinct(func.date_part('YEAR', Topic.date_created)))
for row in result:
print(row[0])

SQL 表达式:

from sqlalchemy import func, select, distinct

query = select([distinct(func.date_part('YEAR', Topic.date_created))])
for row in session.execute(query):
print(row[0])

关于python - 如何仅从时间戳列中检索年份?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33947537/

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