SQL创建计算字段

SQL创建计算字段

所谓的计算字段(calculated fields),其实与列相似,它由SELECT语句创建但不存在于实际的table中。

那我们什么时候要用到计算字段?

举个例子,现在要对以下table的student_class列和student_num列合并为一个新的“列”,那么这个新“列”就是计算字段。

SELECT student_class || ' ' || student_num #拼接的符号对不同的DBMS不一样,如PostgreSQL是以"||"作为拼接符号
FROM table_a; #创造了一个student_class和student_num组成的计算字段(calculated field)

输出如图所示(演示使用的是PostgreSQL):

以上的计算字段还存在着两个问题。第一,student_class和student_num的拼接可能会有冗杂的空格。第二,创建的计算字段没有名称。

对于第一个问题,可以分别使用函数LTRIM(), RTRIM(), TRIM()等函数去除列名的左边空格,右边空格和左右两边的空格。

#第一个问题的解决方案
SELECT RTRIM(student_class) || ' ' || RTRIM(student_num) #去除掉列的右边空格后再拼接
FROM table_a;

对于第二个问题,可以采用AS语句使用别名(using aliases)

#第一个问题的解决方案
SELECT RTRIM(student_class) || ' ' || RTRIM(student_num) #去除掉列的右边空格后再拼接
AS stu_classnum #将计算字段命名为stu_classnum
FROM table_a;

猜你喜欢

转载自blog.csdn.net/waves_/article/details/106873693