SELECT 1
FROM geo_locationInfoMajor_tbl
WHERE geo_locationInfoM_taluka IN(SELECT * from #temp
我创建了一个从前端获取其值的临时表..使用函数我将值插入临时表... 现在临时表中的数据是混合的...它可以是整数或varchar .. 当我只将int或varchar传递给临时表时,它很好。 但如果输出混合,查询会抛出错误..如何处理? 将varchar值'English'转换为数据类型int。
时转换失败这很好 - >
#temp
1
这不是 - >
1
English
答案 0 :(得分:0)
你在临时表中有多少个值? 如果你想使用IN子句,你应该只使用一个与你的geo_locationInfoMajor_tbl相同的列。
试试这个:
SELECT * FROM geo_locationInfoMajor_tbl
WHERE geo_locationInfoM_taluka IN (SELECT geo_locationInfoM_taluka from #temp)