gpt4 book ai didi

sql - 如何在 SQL 中为特定值设置别名?

转载 作者:搜寻专家 更新时间:2023-10-30 20:08:11 24 4
gpt4 key购买 nike

我将提出一个关于列中“别名”值的问题。我将使用星期几作为一个直观的例子来说明我的问题,但我要求日期时间转换。

假设我有以下 SQL 脚本:

SELECT DaysOfWeek 
FROM [databasename].[dbo].[tablename]

现在,DaysOfWeek 列将返回日期名称的字符串值,即“Monday”、“Tuesday”等。

如果我希望查询返回整数 1 表示“星期一”,2 表示“星期二”,等等?我想在 SELECT 语句中为一周中的每一天分配一个特定值,但我不确定该怎么做。

我对 SQL 比较陌生,所以我只是想寻求一种直观的方法来执行这样的任务。

编辑添加:我仅使用星期几及其各自的整数表示作为简单示例;我的任务不涉及星期几,而是涉及员工代码和相应的头衔。

最佳答案

你可以使用 case 来做到这一点:

SELECT (CASE DaysOfWeek 
WHEN 'Monday' THEN 1
WHEN 'Tuesday' THEN 2
. . .
END)

在大多数情况下,没有必要这样存储星期几。您可以轻松地使用函数 datepart()datename() 从日期/时间值中提取星期几。

如果该列在表中,而不是日期的一部分,那么您可能希望将上述逻辑作为计算列包括在内:

alter table t add DayOfWeekNumber as (case DaysOfWeek when 'Monday' then 1 . . .);

关于sql - 如何在 SQL 中为特定值设置别名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42936296/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com