Help using Base SAS procedures

dates problem

Reply
Super Contributor
Posts: 401

dates problem

Hi ,

 

I have to pull these dates form our Taradata datawarehouse in this format  30APR2015 and it's a date9. format

 

I am trying SAS SQL to pull trhe date but getting no results...error actually.

 

I tried  :

where date = '30APR2016'

where date = '30APR2016'd

where put (date, date9.) = '30APR2015'

where put (date, yymmdd10.)= '30APR2015'

where put (date, yymmdd9.)= '30APR2015'

where input (date, yymmdd10.)= '30APR2015'

where input (date, yymmdd9.)= '30APR2015'

 

Nothing works...

Got this error:

 

ERROR: Teradata prepare: Syntax error: Data Type "snap_dt" does not match a Defined Type name.

SQL statement was: select * from ddwv01.MORTG_CLM_LOSS as LP where put(snap_dt, yymmdd9.)

= '30APR2016'.

 

 

Any suggestions?  Thanks.

Valued Guide
Posts: 860

Re: dates problem

I would pull the date in it's current format.  If you need to change it to date9. do it in SAS after you have the dataset.

Super User
Posts: 19,805

Re: dates problem

What does the rest of your query look like? Are you using pass through sql or proc sql or a data step?
Super Contributor
Posts: 401

Re: dates problem

proc sql

Super User
Posts: 19,805

Re: dates problem

Teradata typically stores dates as date times.
Try

where datepart(date) = '30APR2016'd
Super User
Super User
Posts: 7,955

Re: dates problem

Start by doing a simple:

create temp_dataset as select * from your_table

 

Now, goto your work library, and open the properties of the temp_dataset.  What format is the variable in question, what data does it hold?  Post a proc contents if your still having problems, and some of the data.

Super Contributor
Posts: 401

Re: dates problem

Thanks everyone...

 

This worked : 

WHERE DATE = DATE'2016-04-30'

Ask a Question
Discussion stats
  • 6 replies
  • 495 views
  • 0 likes
  • 4 in conversation