Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Conversion failed when converting the varchar value 'Id' to data type int

I got this error when trying run my sql query...

Conversion failed when converting the varchar value 'Id' to data type int

SELECT *
FROM History
INNER JOIN Header
ON History.Id = Header.docId

Please help me :(

like image 339
jhovyn Avatar asked Feb 09 '17 04:02

jhovyn


Video Answer


2 Answers

In your Join condition am sure one column is of Integer type and other one is Varchar type.

ON History.Id = Header.docId

since Int has higher precedence than varchar, Varchar column will be implicitly converted to Int

So explicitly convert the Int column to varchar.

ON History.Id = cast(Header.docId as varchar(50))

I have considered Header.docId as Int type if no, then convert History.Id to varchar

like image 93
Pரதீப் Avatar answered Nov 14 '22 21:11

Pரதீப்


Try casting Id column to INT

SELECT *
FROM History
INNER JOIN Header
ON cast(History.Id AS int) = Header.docId
like image 25
Shakeer Mirza Avatar answered Nov 14 '22 23:11

Shakeer Mirza