【问题标题】:Ho do i write the SQL concat function?我如何编写 SQL concat 函数?
【发布时间】: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 报告问题。'

报告名称:加州地区报告

项目名称:加州海滩项目

最诚挚的问候,

加州队

团队总监

【问题讨论】:

  • 提取信息并在代码中构建您的消息会更好吗?您使用什么方式发送电子邮件?
  • 我将在 SSRS 数据驱动订阅中使用它来发送电子邮件。

标签: sql sql-server select


【解决方案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....

【讨论】:

    猜你喜欢
    • 2018-12-22
    • 2022-01-27
    • 1970-01-01
    • 1970-01-01
    • 2023-02-21
    • 1970-01-01
    • 2020-11-24
    • 2019-08-19
    • 1970-01-01
    相关资源
    最近更新 更多