当前位置:编程学习 > C#/ASP.NET >>

SQL语句@%问题

最近做一个东西,查询数据库中,但是在SQL中验证查询语句,提示错误,还请各位给看下:
SELECT T1.POUND_NO,T2.POUND_NO AS RATE_POUND_NO,T1.POUND_TYPE FROM TDCJL06 T1,TDCJL06 T2 WHERE T1.POUND_TYPE <'6' AND T1.POUND_NO LIKE @POUND_NO||'%' AND T1.PROD_CNAME =NVL(@PROD_CNAME,T1.PROD_CNAME) AND T1.RATE_POUND_NO = T2.POUND_NO AND T2.WT_FLAG >= '1' AND T1.NET_WT_TIME >= @NET_WT_TIME_START AND T1.NET_WT_TIME <= @NET_WT_TIME_END ORDER BY T1.NET_WT_TIME DESC

还请各位讲设计@%部分仔细看看,看我写的有没有错,另外还有红字部分,谢谢了
最好能给解释一下! sql 数据库 select as --------------------编程问答-------------------- LIKE @POUND_NO||'%' 

这个地方有问题吧。。 --------------------编程问答-------------------- --------------------编程问答-------------------- 你自己加点换行缩进,放在有语法高亮的环境内看,就容易多了。 --------------------编程问答--------------------
SELECT T1.POUND_NO,T2.POUND_NO AS RATE_POUND_NO,T1.POUND_TYPE 
FROM TDCJL06 T1,TDCJL06 T2 
WHERE T1.POUND_TYPE <'6' AND T1.POUND_NO LIKE @POUND_NO+'%' -->不用||,直接加
AND T1.PROD_CNAME =NVL(@PROD_CNAME,T1.PROD_CNAME) 
AND T1.RATE_POUND_NO = T2.POUND_NO AND T2.WT_FLAG >= '1' 
AND T1.NET_WT_TIME >= @NET_WT_TIME_START 
AND T1.NET_WT_TIME <= @NET_WT_TIME_END 
ORDER BY T1.NET_WT_TIME DESC
--------------------编程问答-------------------- --------------------编程问答-------------------- @是变量的标记,这样用有问题吧,你为什么不能把%赋给变量呢,
比如:@POUND_NO='%'+'pound'+'%'
--------------------编程问答--------------------

SELECT T1.POUND_NO,T2.POUND_NO AS RATE_POUND_NO,T1.POUND_TYPE 
FROM TDCJL06 T1,TDCJL06 T2 WHERE T1.POUND_TYPE <'6'
   AND T1.POUND_NO LIKE @POUND_NO||'%' 
   AND T1.PROD_CNAME =NVL(@PROD_CNAME,T1.PROD_CNAME)
   AND T1.RATE_POUND_NO = T2.POUND_NO
   AND T2.WT_FLAG >= '1' 
   AND T1.NET_WT_TIME >= @NET_WT_TIME_START 
   AND T1.NET_WT_TIME <= @NET_WT_TIME_END
   ORDER BY T1.NET_WT_TIME DESC
--------------------编程问答--------------------

SELECT T1.POUND_NO,T2.POUND_NO AS RATE_POUND_NO,T1.POUND_TYPE 
FROM TDCJL06 T1,TDCJL06 T2 WHERE T1.POUND_TYPE <'6'
   AND T1.POUND_NO LIKE '''+@POUND_NO+'%''   --||这个不要.. 
   AND T1.PROD_CNAME =NVL(@PROD_CNAME,T1.PROD_CNAME)
   AND T1.RATE_POUND_NO = T2.POUND_NO
   AND T2.WT_FLAG >= '1' 
   AND T1.NET_WT_TIME >= @NET_WT_TIME_START 
   AND T1.NET_WT_TIME <= @NET_WT_TIME_END
   ORDER BY T1.NET_WT_TIME DESC

补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,