社区
疑难问题
帖子详情
如何将字段中存储的字符串执行?
zhjzh_zjz
2006-05-08 11:41:43
比如有一字段birthday中存储有字符串 getdate()
如何在 select birthday from person 中得到getdate() 的执行结果,就是当前日期,而不是getdate() 这个字符串?如果是别的函数或者语句存储在字段中再取出的时候如何让它执行呢?请大虾指教!
...全文
160
11
打赏
收藏
如何将字段中存储的字符串执行?
比如有一字段birthday中存储有字符串 getdate() 如何在 select birthday from person 中得到getdate() 的执行结果,就是当前日期,而不是getdate() 这个字符串?如果是别的函数或者语句存储在字段中再取出的时候如何让它执行呢?请大虾指教!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhjzh_zjz
2006-05-23
打赏
举报
回复
那位高手有比较通用一点的解决办法,感激不尽!
brio8425
2006-05-09
打赏
举报
回复
有加了点见识。。呵呵。。谢谢搂住。。
子陌红尘
2006-05-08
打赏
举报
回复
SQL Server没有这样的内置函数,用户定义函数对执行execute有严格的限制,只允许执行扩展存储过程时调用。
zhjzh_zjz
2006-05-08
打赏
举报
回复
那我test表中存储的是
1 a getdate()
2 b userid()
3 c newid()
...
我想得到的结果是:
1 a 2006-05-08(当前日期)
2 b testid(当前用户)
3 c 10 (新ID)
....
有什么好的办法呢?exec只能单独执行阿,这样的情况不知道如何是好
OracleRoob
2006-05-08
打赏
举报
回复
exec('select getdate()')
动态sql语句基本语法
1 :普通SQL语句可以用Exec执行
eg: Select * from tableName
Exec('select * from tableName')
Exec sp_executesql N'select * from tableName' -- 请注意字符串前一定要加N
2:字段名,表名,数据库名之类作为变量时,必须用动态SQL
eg:
declare @fname varchar(20)
set @fname = 'FiledName'
Select @fname from tableName -- 错误,不会提示错误,但结果为固定值FiledName,并非所要。
Exec('select ' + @fname + ' from tableName') -- 请注意 加号前后的 单引号的边上加空格
当然将字符串改成变量的形式也可
declare @fname varchar(20)
set @fname = 'FiledName' --设置字段名
declare @s varchar(1000)
set @s = 'select ' + @fname + ' from tableName'
Exec(@s) -- 成功
exec sp_executesql @s -- 此句会报错
declare @s Nvarchar(1000) -- 注意此处改为nvarchar(1000)
set @s = 'select ' + @fname + ' from tableName'
Exec(@s) -- 成功
exec sp_executesql @s -- 此句正确
3. 输出参数
declare @num int,
@sqls nvarchar(4000)
set @sqls='select count(*) from tableName'
exec(@sqls)
--如何将exec执行结果放入变量中?
declare @num int, @sqls nvarchar(4000)
set @sqls='select @a=count(*) from tableName '
exec sp_executesql @sqls,N'@a int output',@num output
select @num
子陌红尘
2006-05-08
打赏
举报
回复
exec('select getdate()')
zhjzh_zjz
2006-05-08
打赏
举报
回复
又没有别的办法啊?因为我做的是一个通用的东西,要转换的字符串不是可列举的,用case行不通,是否能直接把中间的字符串执行的结果呢?不知道是否有这样的函数,就像javascript中的Eval函数可以直接执行字符串得结果的。exec在语句中不能执行阿,不知道还有什么好的办法。谢谢
powerking2
2006-05-08
打赏
举报
回复
用 EXEC 函数可以执行 字符串SQL 这就是动态SQL的内容
pengdali
2006-05-08
打赏
举报
回复
exec('getdate()')
可以执行字符串
子陌红尘
2006-05-08
打赏
举报
回复
select
case birthday
when 'getdate()' then convert(char(10),getdate(),120)
else birthday
end as birthday
from
person
冷箫轻笛
2006-05-08
打赏
举报
回复
declare @sql varchar(200)
set @sql= 'getdate()'
exec ('select ' + @sql)
SQL语句集锦
该资料整合了常用的sql语句,可以在平时的工作学习
中
起到指导作用。
【超赞】ArcGIS
字段
计算器分割
字段
中
的
字符串
【超赞】ArcGIS
字段
计算器分割
字段
中
的
字符串
最近在整理植物数据,数据本来是以excel进行
存储
,但是其
中
涉及到要对
字段
进行分割,由于对excel的相关函数不熟悉于是想着能不能用arcgis的
字段
计算器进行解决,经过摸索成功地解决了自己遇到的问题,并记录下来,如下 1、目的:用arcgis的
字段
计算器将
字段
基于特殊字符进行分割,并将分割后的数据保存在对应的新创建的
字段
中
; 2、案例效果图: (将OID编号为33的“桦木科鹅耳枥属”以“科”为特殊字符,分割成“桦木科”和“鹅耳枥属”,其它记录以此类推) !
MySQL更新某个
字段
拼接固定
字符串
有时,我们需要将某个
字段
的值与固定
字符串
拼接在一起,以获取新的
字段
值。现在,我们需要在员工姓名后面添加固定的称号"先生"或"女士",具体根据员工的性别来确定。首先,我们需要查看
字段
的当前值,以便确定要拼接的
字符串
和拼接后的结果。假设我们要更新的
字段
是。
执行
上述SQL语句后,我们将得到更新后的员工表数据,以确认更新操作是否正确
执行
。,要拼接的固定
字符串
为" Doe",更新的条件为某个唯一标识符,比如。替换为你要更新的
字段
名,'固定
字符串
'替换为你要拼接的固定
字符串
,在我们的例子
中
,假设我们要更新的表名为。
mysql替换某个
字段
的某个
字符串
MySQL 替换 或者 删除
字段
的一部分
字符串
更新
字段
用 updatenewssetContent=null where条件--可选 就是用更新语句,只不过具体的值,需要你另外计算得到,你只说730长度,但具体的你并没有描述 mysql正则替换某个
字段
代码如下: CREATEPROCEDUREsp_s...
ArcGIS
字段
计算器分割
字段
中
的
字符串
最近在整理植物数据,数据本来是以excel进行
存储
,但是其
中
涉及到要对
字段
进行分割,由于对excel的相关函数不熟悉于是想着能不能用arcgis的
字段
计算器进行解决,经过摸索成功地解决了自己遇到的问题,并记录下来,如下:
疑难问题
22,298
社区成员
121,733
社区内容
发帖
与我相关
我的任务
疑难问题
MS-SQL Server 疑难问题
复制链接
扫一扫
分享
社区描述
MS-SQL Server 疑难问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章