SQL匹配同一行中的值

时间:2013-10-22 16:47:18

标签: sql sql-server

使用SQL Server。

我有一行包含用户USERID以及他们的Paypal帐号。有时人们手动输入他们的USERID作为Paypal帐号。我需要进行查询以查找userid = PaypalID的所有人。 paypal id是varchar,userid是int。

我已经尝试了

  SELECT *

  FROM [Users] WHERE userID = paypalid

我收到错误 Msg 248,Level 16,State 1,Line 2 varchar值'530817015001'的转换溢出了一个int列。

2 个答案:

答案 0 :(得分:1)

试试这个

SELECT *

  FROM [Users] WHERE cast(userID as varchar) = cast(paypalid as varchar)

答案 1 :(得分:1)

您必须将int转换为varchar

SELECT *
FROM [Users] WHERE CAST(userID AS VARCHAR(50)) = paypalid