我如何编写 SQL concat 函数?
Posted
技术标签:
【中文标题】我如何编写 SQL concat 函数?【英文标题】:Ho do i write the SQL concat function? 【发布时间】:2020-09-18 20:01:04 【问题描述】:大家好:我有一个列名如下的表格:
Select * from Table
第 1 列: 加州地区报告
第 2 列: 加州海滩计划
第 3 列: 约翰·多伊
这是我的查询:但它给了我一个错误:
Select concat('Good Morning',' ',Column3, ':',
'Attached please find '+datename(month, dateadd(month,-1,getdate()))+' +'Year(Getdate()+' report for review. Please direct reporting questions to Dev@gmail.com.'
,'Report Name:','+Column1+'
,'Program name:','+Column2+',
'Kindest regards,
California Team
Director of Team') as FullMessage from Table
下面是我需要这个专栏的格式:RESULT
早安约翰·多伊:
请在附件中找到 2020 年 8 月的报告以供审核。请直接 向 Dev@gmail.com 报告问题。'
报告名称:加州地区报告
项目名称:加州海滩项目
最诚挚的问候,
加州队
团队总监
【问题讨论】:
提取信息并在代码中构建您的消息会更好吗?您使用什么方式发送电子邮件? 我将在 s-s-rS 数据驱动订阅中使用它来发送电子邮件。 【参考方案1】:试试这个方法:
Select FullMessage = 'Good Morning ' + Column3 + ':' + CHAR (13) + CHAR (10) +
'Attached please find the '+ datename(month, dateadd(month,-1,getdate())) + ' ' + convert(varchar(4), Year(Getdate())) + ' report for review. Please direct reporting questions to Dev@gmail.com.' + CHAR (13) + CHAR (10) +
'Report Name: ' + Column1 + CHAR (13) + CHAR (10) +
'Program name: ' + Column2 + CHAR (13) + CHAR (10) +
'Kindest regards, ' + CHAR (13) + CHAR (10) +
'California Team' + CHAR (13) + CHAR (10) +
'Director of Team'
from Table
输出:
【讨论】:
这行得通,如何创建回车和换行? char (13) + char(10) 应该是这样做的,但我需要一个从报告名称到最亲切的问候的制表符空间。 @user9273914 char(9) = TAB 字符,这里是所有字符代码的表格:ascii-code.com【参考方案2】:在 SQL-Server 中,您可以使用 +
运算符连接字符串,就像您在查询的后面部分中所做的那样。您可以在整个过程中使用它:
SELECT 'Good Morning ' + Column3 + ':' -- rest of your query....
【讨论】:
以上是关于我如何编写 SQL concat 函数?的主要内容,如果未能解决你的问题,请参考以下文章