请问错误"参数数据类型 sql_variant 对于 like 函数的参数 1 无效。"是什么意思

wyflmqlove 2012-07-26 01:47:24
我在数据库中对一个字段进行like查询的时候,出现了上面的错误,请问大家这是什么意思呢?
...全文
443 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wyflmqlove 2012-07-27
  • 打赏
  • 举报
回复
谢谢了
以学习为目的 2012-07-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
SQL code

declare @T table([col] sql_variant)
insert @T
select 1 union all
select 2 union all
select 0

select * from @T where cast(col as varchar(4)) like '%1'


类型转型一下,就不报错了...
[/Quote]

叶子正解!
叶子 2012-07-26
  • 打赏
  • 举报
回复

declare @T table([col] sql_variant)
insert @T
select 1 union all
select 2 union all
select 0

select * from @T where cast(col as varchar(4)) like '%1'

类型转型一下,就不报错了...
叶子 2012-07-26
  • 打赏
  • 举报
回复

declare @T1 table([col] varchar(4))
insert @T1
select 1 union all
select 2 union all
select 0

select * from @T1 where col like '%1'
/*
col
----
1
*/

-- 上面的正常,下面的不正常,因为like用于查询的字段不能是sql_variant类型的

declare @T table([col] sql_variant)
insert @T
select 1 union all
select 2 union all
select 0

select * from @T where col like '%1'
/*
Argument data type sql_variant is invalid for argument 1 of like function.
*/
xiaoweiwei2008 2012-07-26
  • 打赏
  • 举报
回复
select * from table where db like '%相应内容%'

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧