首页 > 开发 > 综合 > 正文

SQLServer:《SQL必知必会》一书的读书笔记(七)

2024-07-21 02:46:17
字体:
来源:转载
供稿:网友
SQLServer:《SQL必知必会》一书的读书笔记(七)第7课 创建计算字段

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必知必会》一书的读书笔记(六)


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表