7.1 计算字段(格式化字段)
存储在数据库表中的数据一般不是应用程序所需要的格式,如:
1.需要显示公司名,同时还需要显示公司的地址,但这两个信息存储在不同的表列中。
2.列数据是大小写混合的,但报表程序需要把所有数据按大写表示出来。
计算字段是在运行时在 SELECT 语句内创建的
【提示】在 SQL 语句内可完成的许多转换和格式化工作都可以在客户端(应用程序中完成)。但一般来说,在数据库服务器上完成这些操作比在客户端中完成的要快
7.2 拼接字段
Vendors 表包含供应商名和地址信息。假如要生成一个供应商报表,需要在格式化的名称(位置)中列出供应商的位置。
【解析】拼接:将值联结到一起(将一个值附加到另一个值)构成单个值
例1:
SELECT vend_name + ' (' + vend_country + ')'FROM VendorsORDER BY vend_name;
例2:去掉例1的空格
SELECT RTRIM(vend_name) + ' (' + RTRIM(vend_country) + ')'FROM VendorsORDER BY vend_name;
使用别名:一个未命名的列不能用于客户端应用中,因为客户端没有办法引用它。
例3:
SELECT RTRIM(vend_name) + ' (' + RTRIM(vend_country) + ')' AS vend_titleFROM VendorsORDER BY vend_name;
【提示】AS 关键字是可选的
7.3 执行算数计算
例4:检索订单号 20008 中所有的商品
SELECT PRod_id, quantity, item_priceFROM OrderItemsWHERE order_num = '20008'
例5:对例4的数据进行汇总
SELECT prod_id, quantity, item_price,quantity * item_price AS expanded_priceFROM OrderItemsWHERE order_num = '20008'
【提示】如何进行计算测试:使用 SELECT
SELECT 3 * 2 ;
SELECT GETDATE();
7.4 小结
续集:
SQLServer:《SQL必知必会》一书的读书笔记(六)
新闻热点
疑难解答