sql server - Access SQL to T-SQL -
this query works in ms access:
select firm.adm_firm_id, firm.ccis_firm_seqn_nbr, firm.firm_name, firm.dba_firm_name, oha.file_closure_date, oha.adm_qual_flag, oha.firm_fy_end_date, oha.report_received_date, oha.cognizant_letter_flag, oha.audit_type, firm.aq_flag, iif(oha.file_closure_date>=dateadd("m", -18, date()),"yes","no") relevant dbo_adm_firm firm inner join dbo_adm_oha_rate oha on firm.adm_firm_id = oha.adm_firm_id ((oha.file_closure_date not null) , (oha.file_closure_date>#1/1/2010#)) order firm.firm_name, oha.firm_fy_end_date desc; i tried best convert t-sql, calling in batch script.
select firm.adm_firm_id, firm.ccis_firm_seqn_nbr, firm.firm_name, firm.dba_firm_name, oha.file_closure_date, oha.adm_qual_flag, oha.firm_fy_end_date, oha.report_received_date, oha.cognizant_letter_flag, oha.audit_type, firm.aq_flag, iif(oha.file_closure_date>=dateadd(m, -18, getdate()),'yes','no') relevant dbo.adm_firm firm inner join dbo.adm_oha_rate oha on firm.adm_firm_id = oha.adm_firm_id ((oha.file_closure_date not null) , (oha.file_closure_date>'1/1/2010')) order firm.firm_name, oha.firm_fy_end_date desc; the output in excel file is:
msg 102, level 15, state 1, server ch-is-db1, line 3
incorrect syntax near '>'.
so believe problem in dateadd method, can't figure out difference is. tried changing date() getdate() , changing string delimiters. tips?
try use case when
select firm.adm_firm_id, firm.ccis_firm_seqn_nbr, firm.firm_name, firm.dba_firm_name, oha.file_closure_date, oha.adm_qual_flag, oha.firm_fy_end_date, oha.report_received_date, oha.cognizant_letter_flag, oha.audit_type, firm.aq_flag, case when oha.file_closure_date >= dateadd(m, -18, getdate()) 'yes'else 'no' end relevant dbo.adm_firm firm inner join dbo.adm_oha_rate oha on firm.adm_firm_id = oha.adm_firm_id ((oha.file_closure_date not null) , (oha.file_closure_date>'1/1/2010')) order firm.firm_name, oha.firm_fy_end_date desc;
Comments
Post a Comment