gpt4 book ai didi

sql - 选择某一年 Oracle 的记录

转载 作者:行者123 更新时间:2023-12-04 08:58:20 26 4
gpt4 key购买 nike

我有一个存储交易和日期列的 oracle 表。如果我需要选择一年的记录,比如 2013 我这样做:

select * 
from sales_table
where tran_date >= '01-JAN-2013'
and tran_date <= '31-DEC-2013'

但是我需要一种直接的方式来选择一年的记录,比如从应用程序中传递参数“2013”​​以从该年的记录中获取结果而不给出范围。这可能吗?

最佳答案

您可以使用 至今 功能

http://psoug.org/reference/date_func.html

select *
from sales_table
where tran_date >= to_date('1.1.' || 2013, 'DD.MM.YYYY') and
tran_date < to_date('1.1.' || (2013 + 1), 'DD.MM.YYYY')

显式比较的解决方案 (tran_date >= ... and tran_date < ...)能够在 tran_date 上使用索引 field 。

考虑边界:例如如果 tran_date = '31.12.2013 18:24:45.155'比您的代码 tran_date <='31-DEC-2013'会想念它

关于sql - 选择某一年 Oracle 的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18249469/

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