找回密码
 立即注册

QQ登录

只需一步,快速开始

doudou2022

初级会员

19

主题

60

帖子

259

积分

初级会员

积分
259
doudou2022
初级会员   /  发表于:2023-2-18 23:03  /   查看:1700  /  回复:8
50金币
大家好!
表里有2个字段,年和月,用SQL拼接成YYYYMM格式。
cast("年"as varchar)+cast("月"as varchar)变成2个数字相加。
CONVERT(varchar(),"年")+CONVERT(varchar(),"月"),提示“no such function:varchar
谢谢!



最佳答案

查看完整内容

cast("年"as varchar)||cast("月"as varchar) 试试“||”这个连接符 加号是运算符,你这个需要的是连接符,如果你用内建库,这个连接符非常好用

8 个回复

正序浏览
Lay.Li悬赏达人认证 活字格认证
超级版主   /  发表于:2023-2-20 10:04:34
9#
感谢各位大佬的支持~
回复 使用道具 举报
数据民工悬赏达人认证 活字格认证
高级会员   /  发表于:2023-2-19 17:03:20
8#
本帖最后由 数据民工 于 2023-2-19 17:04 编辑
doudou2022 发表于 2023-2-19 16:32
谢谢!用"||"显示没问题了,但在后面用SQL行列转换的时候,会不成功。SQL不会报错,但结果全部是0

建议用图文列表完成这个行转列的操作,因为内建库有很多操作是不支持的,另外就是你写的SQL语句里有可能需要拼接列名,这个有可能不成功

评分

参与人数 1金币 +5 收起 理由
Lay.Li + 5 赞一个!

查看全部评分

回复 使用道具 举报
doudou2022
初级会员   /  发表于:2023-2-19 16:33:50
7#
Logic 发表于 2023-2-19 13:59
把字段a 和 字段b拼接起来是   
concat(a,b)

会提示没有这个函数,像上面桂花说的要先申明吗,怎么申明
回复 使用道具 举报
doudou2022
初级会员   /  发表于:2023-2-19 16:32:12
6#
数据民工 发表于 2023-2-18 23:34
cast("年"as varchar)||cast("月"as varchar)
试试“||”这个连接符
加号是运算符,你这个需要的是连接符 ...

谢谢!用"||"显示没问题了,但在后面用SQL行列转换的时候,会不成功。SQL不会报错,但结果全部是0
回复 使用道具 举报
doudou2022
初级会员   /  发表于:2023-2-19 16:30:02
5#
桂花酒酿丸子 发表于 2023-2-19 12:03
你为啥设置一个函数(function)做实际字段?
并且没有事先声明这个函数(你写的是varchar())到底执行什么操作 ...

CONVERT不是内置函数吗
我的目的就是把2个是数值的字段,拼接起来.
回复 使用道具 举报
Logic
金牌服务用户   /  发表于:2023-2-19 13:59:32
4#
把字段a 和 字段b拼接起来是   
concat(a,b)

评分

参与人数 1金币 +5 收起 理由
Lay.Li + 5 赞一个!

查看全部评分

回复 使用道具 举报
桂花酒酿丸子悬赏达人认证 活字格认证
高级会员   /  发表于:2023-2-19 12:03:02
3#
你为啥设置一个函数(function)做实际字段?
并且没有事先声明这个函数(你写的是varchar())到底执行什么操作.

评分

参与人数 1金币 +5 收起 理由
Lay.Li + 5 赞一个!

查看全部评分

回复 使用道具 举报
最佳答案
最佳答案
数据民工悬赏达人认证 活字格认证
高级会员   /  发表于:2023-2-18 23:03:34
来自 2#
本帖最后由 数据民工 于 2023-2-18 23:41 编辑

cast("年"as varchar)||cast("月"as varchar)
试试“||”这个连接符
加号是运算符,你这个需要的是连接符,如果你用内建库,这个连接符非常好用

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 2金币 +5 满意度 +5 收起 理由
doudou2022 + 5
Lay.Li + 5 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部