想在存储过程中,写出类似:
Select t_id,use_age
if(param1 == 1)
{
,use_name
}
from temp_table怎样做成存储过程呢?
大家帮忙看一下。
还有,这算是那部分知识块?
Select t_id,use_age
if(param1 == 1)
{
,use_name
}
from temp_table怎样做成存储过程呢?
大家帮忙看一下。
还有,这算是那部分知识块?
解决方案 »
- 帮俺解释下。这段存储过程。。。谢谢你们乐
- sql2000里面的windows身份验证和sql身份验证有什么区别?如何创建?
- 求助!
- 查询语句做链接时 硬盘容量不够大
- 怎样生成 这个视图(B)? (求助)
- sql语句优化
- 请问能用SQL语句实现统计功能吗?
- ((,)(,))各位菜鸟来了!有简单字段:日期、代号。请问:如何实现查找日期小于'20020609' 并且代号为'A' 或 'B'的记录? 谢谢!!!
- sql server2000中,由触发器生成的值怎么取?我用rs.addnew rs.update插入后,不能用rs("XX")取得值?
- 求一条sql语句,树形结构
- 数据库权限问题!
- 請教一個簡單的SQL递归查詢問題~~謝謝了
set @sql='select t_id,use_age'+case when @param1=1 then ',use_name' else '' end+' from temp+table'
exec(@sql)
@param int
as
declare @str varchar(50)
begin
if @param = 1
set @str = ',use_name'
else
set @str = ''
exec('
select t_id,use_age'+@str+' from temp_table
')
end
use_name=case when param1 = 1 then use_name else '' end
from temp_table
if(param1 == 1)
{
,use_name
}
from temp_table select t_id,use_age,Case param1 when 1 then use_name else null end from temp_table
用动态的SQL:create PROCEDURE MySel
@param1 varchar
as
declare @sql varchar(2000)
set @sql='select t_id,use_age ' if(@param1='1')
begin
set @sql=@sql+',use_name '
end
set @sql=@sql+'from temp_table '
exec(@sql)
go
应该算是SQL语法吧
这两个有什么区别吗??
用那个比较好??
if else 我没有在查询语句中用到过。
一般是用到接收的参数 判断这个参数,然后执行什么语句而
case when then end ,是在语句中构成的。
意思就是说,当 什么东西 等于什么的时候 显示什么,否则 显示什么