在尝试执行此查询时,我一直收到一条未正确结束的声明。这是我第一次真的搞乱日期。我试图将结果限制在日期字段从2013年1月1日及之后的那些内容中。
select * from tab1
inner join tab2
on tab1.projectid = tab2.projectid
where tab1.client_id = 100
and tab1.sa_type_code = 'SUP'
and tab1.pl_category = 'CAT33'
where trunc(tab1.log_date) >= TO_DATE('01-jan-2013','dd-MON-yyyy');
感谢您的帮助
答案 0 :(得分:3)
问题是你有两个WHERE clauses
,其中SELECT
语法只允许一个子句。
select *
from tab1
inner join tab2
on tab1.projectid = tab2.projectid
where tab1.client_id = 100
and tab1.sa_type_code = 'SUP'
and tab1.pl_category = 'CAT33'
and trunc(tab1.log_date) >= TO_DATE('01-jan-2013','dd-MON-yyyy');
答案 1 :(得分:2)
您不能有两个where
条款:
select * from tab1
inner join tab2
on tab1.projectid = tab2.projectid
where tab1.client_id = 100
and tab1.sa_type_code = 'SUP'
and tab1.pl_category = 'CAT33'
and trunc(tab1.log_date) >= TO_DATE('01-jan-2013','dd-MON-yyyy');
如果您确实想按日期订购,请添加:
order by tab1.log_date
你可能想要:
order by tab1.log_date desc
首先获取最新日期。