sql - SQL 创建额外的列,从表的两列中获取数据
问题描述
我有一个查询,其中有两个字段,我想将它们组合为一个新列。在excel上它是这样的
=CONCATENATE([@CompanyID],[@Year],[@month])
但我不知道如何在 sql 上创建这个公式,输出会像
新 ID = 88201911 aka 88=companyID 2019=year 11=month
示例代码
Select
companyID,
invoicedate,
month(invoicedate) as month,
year(invoicedate) as year,
concat('companyID','month','year')
from accounting
解决方案
您不能在同一select
. 所以你需要重复表达式:
month(invoicedate) as month,
year(invoicedate) as year,
concat(companyID, month(invoicedate), year(invoicedate))
此外,切勿使用单引号来引用列。它们应该只用于字符串和日期常量。
推荐阅读
- ios - 在 iPhone 和 iPad 上清除视图控制器
- regex - 如何过滤包含字符和数字组合的字符串
- c - 数组打印少一个数字
- java - Java:执行 HTTP REST GET 调用而不读取响应
- javascript - 如何添加购物车图标反应原生操作栏?
- powerapps - PowerApps 如果文本字段为空,请不要打补丁,否则打补丁
- java - 如何将单个 SQLite 数据显示到 textview 中?
- jquery - 显示/隐藏功能的问题以某种方式刷新页面
- javascript - 了解回复 url,并回复完成登录和注销的特定路由
- xamarin.forms - Xamarin Forms iOS Build Release 构建缺少 AppIcons