在 SQL Express 中使用表达式结果(例如月份)作为列名

发布于 2024-10-26 01:41:58 字数 395 浏览 2 评论 0原文

我正在编写一个 SQL 表达式,我想使用当前月份作为列名称/标题。

代码:

Select MONTH(GETDATE()) AS MONTH(GETDATE())
FROM SomeTable;

错误:

错误 102:“GETDATE”附近的语法不正确。

这是一个学校项目,我不确定是否可行。如果是,我想可能将该月份数字转换为实际的月份名称。提前致谢。

哦,我正在使用 LinqPad 来测试远程数据库和 SQL Express Server (Transact-SQL) 上的查询。

干杯, 林赛

I'm writing an SQL expression and I'd like to use the current month as the column name/header.

Code:

Select MONTH(GETDATE()) AS MONTH(GETDATE())
FROM SomeTable;

Error:

Error 102: Incorrect syntax near 'GETDATE'.

This is for a school project and I'm not sure if it's possible. If it is, I'd like to possibly convert that Month number to the actual month name. Thanks in advance.

Oh, and I'm using LinqPad to test the queries on a remote DB and SQL Express Server (Transact-SQL).

Cheers,
Lindsay

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

浮云落日 2024-11-02 01:41:59

我认为,您不能在列别名中使用函数,如果您尝试这样做,则会收到此错误不正确的语法“期望 ID、QUOTED_ID、STRING 或 TEXT_LEX”,这意味着别名文本必须进行硬编码。

我建议,您使用前端应用程序将当前月份设置为标题,而不是依赖后端 SQL 查询。

I think, You can not use function in column alias, if you try to then you get this error incorrect syntex "Expecting ID, QUOTED_ID, STRING, or TEXT_LEX" which means the alias text has to be hard coded.

I would suggest, you use your front end application to set current month as header, instead of relying on back end sql query.

时光倒影 2024-11-02 01:41:59

计算列的别名不应包含任何函数 - 仅包含文本:

SELECT
   MONTH(GETDATE()) AS 'Month'
FROM 
   dbo.SomeTable

The alias for your computed columns shouldn't contain any function - just text:

SELECT
   MONTH(GETDATE()) AS 'Month'
FROM 
   dbo.SomeTable
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文