hive实现for循环 sql存储过程中根据判断拼接sql语句然后执行?

sql存储过程中根据判断拼接sql语句然后执行?不知道你为什么要这样写,,, if xxx sql1 select count() xx from sql1 end else sql2 select

sql存储过程中根据判断拼接sql语句然后执行?

不知道你为什么要这样写,,, if xxx sql1 select count() xx from sql1 end else sql2 select xxxx from sql2 xxx 为什么不采用这种方式? 如果非要拼接,还要定义@变量, 你后续还是要判断from后面引用哪个, 因为from 后面是没有 a or b的写法的

sqlserver的存储过程字符串怎么拼接的?

你的问题,问的不是很清楚,你是想问,如果将查询结果拼接为字符串吗?

有两种办法,如果是拼接为一个字符串,可以用变量,如:

DECLARE @Names VARCHAR(MAX)SELECT @Names=ISNULL(@Names ",","") t.name FROM sys.tables AS tSELECT @Names--返回:spt_fallback_db,spt_fallback_dev,spt_fallback_usg,spt_monitor,MSreplication_options

如果是用SQL中,可以用xml path如:

SELECT STUFF((SELECT "," t.name FROM sys.tables AS t FOR XML PATH("")),1,1,"")--返回spt_fallback_db,spt_fallback_dev,spt_fallback_usg,spt_monitor,MSreplication_options