问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sp_executesql的参数中用 case,报错:从数据类型 nvarchar 转换为 numeric 时出错

发布网友 发布时间:2022-04-08 10:53

我来回答

2个回答

热心网友 时间:2022-04-08 12:22

--这个是一个乘法,两个值都要是数字
QTY * @MEDIAN

但你在定义为字符型,所以报错了
sp_executesql 还没强大到能解析表达式的地步
如果你要使用表达式就直接拼接SQL就得了

DECLARE @SQL NVARCHAR(1024),@MEDIAN NVARCHAR(12)
SET @MEDIAN=
N'CASE LEFT(STU_CODE, 3) WHEN ''SUB'' THEN 4.70 WHEN ''LID'' THEN 0.73 WHEN ''INK'' THEN 31 END'

SET @SQL='SELECT QTY * ‘+@MEDIAN+’ AS TOTAL_PRICE
FROM COP_STUDENTS ';
exec (@sql)

热心网友 时间:2022-04-08 13:40

这是因为你定义的@MEDIAN NVARCHAR(12)是字符类型
而sp_executesql的参数化会将一切参数都转换为字符,
也就是QTY *'CASE LEFT(STU_CODE, 3) WHEN ''SUB'' THEN 4.70 WHEN ''LID'' THEN 0.73 WHEN ''INK'' THEN 31 END'
这个字段与整个这个字符相乘,所以这类计算的字符还是要拼接到@sql中
或者把case when写在里面,另定义其他的参数如'sub'或4.70这类的
关于SQL exec sp_executesql调用存储过程

exec sp_executesql N'Proc_getUserInfo @UserName,@UserPhone',N'@UserName nvarchar(2),@UserPhone nvarchar(11)',@UserName=N'张三',@UserPhone=N'134567912'试试

用vlookup双重条件取值

在Excel中,使用`VLOOKUP`函数进行单一条件查找非常常见,但`VLOOKUP`本身并不直接支持双重条件。然而,你可以通过一些间接方法实现。一种方法是将两个条件合并为一个标识符(例如,通过连接或串联),然后在另一个区域中查找此标识符的对应值。这通常涉及到辅助列或辅助表,这些列或表将两个条件合并为一个可以在`VLOOKUP`中搜索的单一值。另一种方法是使用其他函数(如`INDE电商平台`和`MATCH`组合)来实现更复杂的查找逻辑,这允许你基于多个条件检索数据。仅需3步!不写公式自动完成Excel vlookup表格匹配!Excel在线免,vlookup工具,点击8步自动完成表格匹配,无需手写公式,免费使用!

sp_executesql怎么实现的,关键是后面的参数可以不确定个数,类型!

Describe 通用查询数据ASPNETPAGE分页过程 / Tables 表名 必选 PrimaryKey 主关键字 必选 pagesize 页码大小 可选 默认值:1 pageindex 当前页 可选 默认值:1 docount 是否只统计总记录数 可选 默认值:否 Fields 选择字段 可选 默认:所有字段 ...

关于mssql中EXEC sp_executesql的一些疑惑!

通过 SP_EXECUTESQL的第2个参数来定义有哪些参数输出的加OUTPUT后面的参数为执行的时候,具体参数的数据。输出的加OUTPUT1> BEGIN2> DECLARE @Sql NVARCHAR(200);3> DECLARE @name VARCHAR(10);4> SET @Sql = 'SELECT @name = name FROM test_dy...(火星人)3379 ...

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...可是不知道为什么我想去西安的寺庙皈依。 这样对后面的修行会造成影... protobuf使用详解 开机显示睡眠模式什么情况? e31230v2这款处理器怎么样? 怎么样在淘宝收藏夹里看收藏商城东西? 枸杞和这“三物”是好搭档,坚持吃30天,3大好处可能不请自来! 在微信里京东商城里收藏的商品能不能在qq里的京东商城的收藏里找到 oppoai给图片加文字能把框里的文字竖向写吗oppo怎么在图片上加字 新宿御苑的交通信息 南京南站坐公交怎么到御苑宾馆 任嘉伦新剧剧本获赞,格局不局限于偶像剧,原创故事值得点赞吗? 求几首极度悲伤的歌曲 在那能看到当天的黑龙江生活报和新晚报的电子版 蓝牙接收器 蓝牙耳机吗 哪个好 生活报电子版 救人的速度是为民的热度,衡南公安巡特警哪些行为值得点赞? 有什么特别忧伤悲伤的歌! 合肥火车站到安医第一附属医院坐几路公交??? gta5爆显存设置画面会不会对显卡造成伤害 虽然一点都不卡 还是怕显卡 艾略特佩吉在社交平台上晒出自己的腹肌照,如此积极的心态值得点赞吗? 非常伤感的歌有哪些? 寻找一些特别伤感的歌曲 从安医大第一附属医院绩溪路到火车站坐几路公交车一? 电脑爆显存是什么意思?对电脑有什么危害呢? 爆显存会不会烧显卡 双木三林AD18怎样连接蓝牙耳机吗? 要成立一个广告设计公司,创业计划书和可行性计划书该如何写好? 孩子的成长离不开老师辛勤的付出老师的哪些优点值得点赞 安医大第一附属医院看病可以刷医保卡吗? 电脑键盘右上角的小指示灯亮了,怎样关掉 谁有哈尔滨生活报08年9月9日的电子版? 的哥让乘客下车,载路边受伤军人就医,他的行为值得点赞吗? 大众生活报 “看到帽子老人哭了”陕西小伙坚持10年给乡村老人拍照,值得点赞吗? 近期《现代家庭报》有电子版的吗? 小学给学生发新年寄语红包,学校的行为值得点赞吗? 哈尔滨新晚报或生活报 哈尔滨生活报是每天一刊吗? 法官回应全职太太离婚获5万家务补偿,他的回应为何值得点赞? 外卖哥两年帮27位走失者回家,这种行为值不值点赞? 哈尔滨生活报地址邮编,如何投稿 儿子无意逃票父亲严肃教育,父亲的教育方式值得点赞吗? 2021年老年生活报一月份报纸怎么样可以买到? 母亲“大义灭亲式”给回家的女儿全身消毒,如此高的防控意识是否值得点赞? 哈尔滨地铁三号线在赣水路有站点吗?具体位置是在哪啊!! 记一个值得点赞的人 作文 想知道: 哈尔滨市 哈尔滨地势图 在哪 急求极度伤感的歌曲,最好是女生唱的 大庆新闻传媒集团的五报、两台、两网 有没有听后会极度很悲伤的音乐?