Çë½ÌÓйظù¾ÝÅжÏÌõ¼þ½øÐÐSQLÓï¾äÆ´½ÓµÄÎÊÌâ
ÏÖÔÚÓÐÒ»¸öSQLÓï¾ä£¬
ÀýÈ磺SELECT .... from tt WHERE ...
È»ºóÎÒÏë¸ù¾ÝÒ»¸ö´«ÈëµÄÖµÅжÏÊÇ·ñ»¹Òª¼ÓÒ»¸ö" AND ×Ö¶ÎÃû£½Öµ"µÄÌõ¼þ
ÎÒÉùÃ÷ÁËÒ»¸ö±äÁ¿£¬È»ºóÓÃIFÀ´½øÐи³Öµ£¬µ«ÊÇûÓгɹ¦£¬ÎÒÓõÄÊÇ'+'À´Á¬½ÓµÄ£¬
½á¹û²éѯ°ÑËüµ±³ÉÒ»¸öÖµ£¬¶ø²»ÊÇSQLµÄÒ»²¿·Ö£¬Çë½Ì¸÷λ´óÏÀ£¬Ð»Ð»£¡
Óö¯Ì¬SQLÖ´ÐÐ
¸øÄãд¸öÀý×Ó
SQL code:
declare @tt varchar(100),@sql varchar(200)
set @sql='select * from where tt='+@tt
exec(@sql)
SQL code:
DECLARE @SQL NVARCHAR(4000)
SET @SQL=N'SELECT * from tt WHERE 1=1'
DECLARE @WHERE NVARCHAR(4000)
DECLARE @NUM INT
SET @NUM=1
IF(@NUM>0)
SET @WHERE=ISNULL(@WHERE,'')+' AND NUM='+LTRIM(@NUM)
SET @SQL=@SQL+@WHERE
PRINT @SQL
/*SELECT * from tt WHERE 1=1 AND NUM=1
Ïà¹ØÎÊ´ð£º
СµÜÊǸöÐÂÊÖ ÏÖÔÚÓиöÎÊÌâÒ»Ö±²»Äܽâ¾ö
ÀýÈç
procedure produce_proc
@p001 nvarchar(8000),
@p002 nvarchar(8000),
@p003 nvarchar(8000),
& ......
ÎÒÓõÄÊÇmysql5.1£¬Êý¾Ý¿â×Ö·û¼¯Îªutf8
ͨ¹ýdosÃüÁîÐе¼ÈëSQLÎļþ ³ö´í£¬ÎÞ·¨µ¼Èë¡£
½«SQLÎļþÖеÄÊý¾ÝÈ«²¿Ê¹ÓÃÓ¢ÎÄ ¿ÉÒÔµ¼Èë
ÇëÎÊÎÊÌâÔÚÄÄ£¿
×°¸öÖÐÎÄÈí¼þ¼´¿É.
ºÜ¶àÄêÒÔǰ,Óùý¸öÒ»¸ ......
table1
Ãû³Æ Èë¿âÊý
CT»ú 3
CT»ú 5
X¹â»ú 4 ......