?
Solved

having problem using datadiff, getting conversion failed when converting date...from character string

Posted on 2010-09-20
10
Medium Priority
?
242 Views
Last Modified: 2012-05-10
I have a couple of date fields. If I just do select date1, date2 from tbl. They look the same (like regular date/time fields). If I do
select DateDiff(dd, date1, GetDate())
works fine
this one gets the error
select DateDiff(dd, date2, GetDate())
this also gets the same error
select DateDiff(dd, cast(date2 as datetime), GetDate())

So, I'm thinking date2 is a string, but, why does it look like a date if selected alone and how do I tell what data type it is?

How do I get it to work with the datediff?

thanks
0
Comment
Question by:avoorheis
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 3
10 Comments
 
LVL 11

Accepted Solution

by:
aelliso3 earned 1200 total points
ID: 33719304
Try this:

select DateDiff(dd, convert(datetime,(date2 )), GetDate())
0
 
LVL 29

Assisted Solution

by:sammySeltzer
sammySeltzer earned 800 total points
ID: 33719306
Maybe remove the datetime like:

select DateDiff(dd, cast(date2 as datetime), GetDate())
0
 
LVL 11

Expert Comment

by:aelliso3
ID: 33719370
Just for future knowledge, you can use the following to find the datatypes and some other info about the tables as well:
 

SELECT TABLE_CATALOG AS DBName
     , TABLE_SCHEMA AS SchemaName
     , COLUMN_NAME AS ColumnName
     , DATA_TYPE AS DataType
     , CHARACTER_MAXIMUM_LENGTH AS MaxLength
     --, *
FROM information_schema.columns
WHERE table_schema = 'dbo'
     AND table_name = 'TableName'
     --AND column_name = 'col'

Open in new window

0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:avoorheis
ID: 33719445
DateDiff(dd, convert(datetime, date2), GetDate())       does not work, same error

select DateDiff(dd, cast(date2 as datetime), GetDate())     does not work, same error


0
 

Author Comment

by:avoorheis
ID: 33719464
date1 and date2 are both date time fields
I must be missing something, but, I guess that's the problem
0
 

Author Comment

by:avoorheis
ID: 33719524
hold on...it works ok directly from the original table, the query I'm using has lots of other things going on....let me review a bit more and contine in a little bit
0
 
LVL 29

Expert Comment

by:sammySeltzer
ID: 33719566
>> select DateDiff(dd, cast(date2 as datetime), GetDate())     does not work, same error
are you sure?

Be sure you are selecting from a table

 select DateDiff(dd, cast(date2 as datetime), GetDate())    FROM...

BTW, what is the date2 data type?

It worked for me when I just tried it now.
0
 
LVL 11

Expert Comment

by:aelliso3
ID: 33719638
sammySeltzer ... read the comment directly above you're last post ...
0
 
LVL 29

Expert Comment

by:sammySeltzer
ID: 33719707
yea, I posted before I saw that comment, sorry.
0
 

Author Comment

by:avoorheis
ID: 33719774
the problem was in a different area
thanks for looking and posting
0

Featured Post

Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Slowly Changing Dimension Transformation component in data task flow is very useful for us to manage and control how data changes in SSIS.
In the first part of this tutorial we will cover the prerequisites for installing SQL Server vNext on Linux.
Using examples as well as descriptions, and references to Books Online, show the different Recovery Models available in SQL Server and explain, as well as show how full, differential and transaction log backups are performed
Via a live example, show how to extract insert data into a SQL Server database table using the Import/Export option and Bulk Insert.

764 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question