SQL语句WHERE 中LIKE后加字符型变量如何写?
tj='A%'
SELECT max(t_cd_dj.no)
INTO :ss
FROM t_cd_dj
WHERE (t_cd_dj.no like :tj);
执行后SS没有返回值
问题点数:20、回复次数:5Top
1 楼happyflystone(无枪的狙击手)回复于 2006-03-14 17:33:01 得分 10
感觉是PB的写法吧,,
tj="'A%'"
SELECT max(t_cd_dj.no)
INTO :ss
FROM t_cd_dj
WHERE (t_cd_dj.no like :tj);
Top
2 楼xeqtr1982(Visual C# .NET)回复于 2006-03-14 17:35:14 得分 10
declare @tj varchar(10)
set @tj='A%'
exec('SELECT max(t_cd_dj.no)
INTO ss
FROM t_cd_dj
WHERE t_cd_dj.no like '+@tj)
select * from ssTop
3 楼happyflystone(无枪的狙击手)回复于 2006-03-14 17:38:31 得分 0
经测试语句是正常的,查你的表数据是不是有问题啊Top
4 楼xeqtr1982(Visual C# .NET)回复于 2006-03-14 17:46:36 得分 0
declare @tj varchar(10)
set @tj='''A%'''
declare @sql varchar(100)
set @sql='SELECT max(t_cd_dj.no) as no
INTO ss
FROM t_cd_dj
WHERE t_cd_dj.no like '+@tj
exec(@sql)
--刚才写错了Top
5 楼laiker0719(laiker0718)回复于 2006-03-14 23:00:12 得分 0
DECLARE @tj AS nvarchar(50)
SET @tj=" 'A%' "
SELECT max(t_cd_dj.no)
INTO ss
FROM t_cd_dj
WHERE t_cd_dj.no like @tj
GO
就可以了
Top




