like 的模糊查询,多谢

jamesyue2008 2010-10-22 08:47:15
DECLARE @P1 varchar
set @P1='CAFG3'
SELECT TOP (200) orderno, customid, detilid, Ordernum, idd, ordate
FROM orders
WHERE (Ordernum LIKE '%'+@P1+'%')

为何上面的查询结果与下面的不一样?

SELECT TOP (200) orderno, customid, detilid, Ordernum, idd, ordate
FROM orders
WHERE (Ordernum LIKE '%CAFG3%')
...全文
82 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
abuying 2010-10-22
  • 打赏
  • 举报
回复
不影响的。
DECLARE @P1 varchar
set @P1='CAFG3'
SELECT TOP (200) orderno, customid, detilid, Ordernum, idd, ordate
FROM orders
WHERE (Ordernum LIKE '%'+@P1+'%') order by orderno
--加个order by
bingmeng_1102 2010-10-22
  • 打赏
  • 举报
回复
要指定类型长度啊。。。
varchar(20)
jamk 2010-10-22
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zsh0809 的回复:]
引用 2 楼 wufeng4552 的回复:

SQL code
DECLARE @P1 varchar(100)--定义类型别忘记长度 否则默认为1 了 即 @P1='C'
set @P1='CAFG3'
SELECT TOP (200) orderno, customid, detilid, Ordernum, idd, ordate
FROM orders
WHERE (Ord……
[/Quote]

学习了
「已注销」 2010-10-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wufeng4552 的回复:]

SQL code
DECLARE @P1 varchar(100)--定义类型别忘记长度 否则默认为1 了 即 @P1='C'
set @P1='CAFG3'
SELECT TOP (200) orderno, customid, detilid, Ordernum, idd, ordate
FROM orders
WHERE (Ordernum LIKE '%'+@P1+'%')
[/Quote]
「已注销」 2010-10-22
  • 打赏
  • 举报
回复
应该没有差别,贴出数据看看呢
SQLCenter 2010-10-22
  • 打赏
  • 举报
回复
DECLARE @P1 varchar
相当于
DECLARE @P1 varchar(1)
水族杰纶 2010-10-22
  • 打赏
  • 举报
回复
DECLARE @P1 varchar(100)--定义类型别忘记长度 否则默认为1 了 即 @P1='C'
set @P1='CAFG3'
SELECT TOP (200) orderno, customid, detilid, Ordernum, idd, ordate
FROM orders
WHERE (Ordernum LIKE '%'+@P1+'%')
SQLCenter 2010-10-22
  • 打赏
  • 举报
回复
DECLARE @P1 varchar(100)

34,590

社区成员

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

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