数据库SQL语句学习笔记(5)-创建计算字段

1.存储在表中的数据并不总是应用程序需要的,比如说我们有商品的单价,有售出商品的数量这两个列,但是我们为了打印发票,需要总价信息,即单价*商品。因此,我们需要直接从数据库中检索出转换,计算或格式化过的数据,而不是检索出数据。此时单价和数量是一般的表列,而总价就是计算出的字段。

  • 字段:基本上与列的意思相同,经常互相使用,不过数据库列一般称为列。
  • 只有数据库自己知道哪些列是列,哪些列是字段。应用程序并不能识别。
USE sells;
SELECT * FROM Vendors;

2. 拼接(concatenate)字段:将值联结到一起(将一个值附加到另一个值)构成单个值。

USE sells;
SELECT concat(vend_name,'(',vend_country,')') 
FROM Vendors;

有时为了正确返回格式化的数据,必须去掉一些空格,这可以用RTRIM()函数完成。

LTRIM(去掉左边所有空格),TRIM()去掉字符串左右两边的空格。

3. 拼接完成后产生了新的一列,但是没有名字,这样就无法在运用时引用它。从而,我们需要赋予它一个别名(alias),使用AS关键字赋予。

SELECT 
concat(TRIM(vend_name),' (',TRIM(vend_country),' )')
AS vend_title 
FROM Vendors;

结果:

4. 执行算术运算

SELECT prod_id,quantity,item_price 
FROM OrderItems 
WHERE order_num=20008;

现在计算总价,并起别名overall_price

SELECT prod_id,quantity,item_price,quantity*item_price AS overall_price 
FROM OrderItems 
WHERE order_num=20008;

overall_price就是新字段的别名,此列也称为导出列。

SQL算术操作符:+,-,*,/

SELECT 2*3;

上面的结果为6,也就是说SELECT不仅可以作为检索数据的关键字,也可以简单地访问和处理表达式

SELECT now();

显示现在时间2016-06-06 20:22:46

posted @ 2016-06-06 20:24  gaojiaxing  阅读(3003)  评论(0编辑  收藏  举报