• class10_创建新的输出字段


    创建新的输出字段

    数值计算

    对单个或多个字段进行数值计算

    比如:

    数据库中数量的单位是股,如何转换为手(一手 = 100股)后输出?如何根据股票交易表中的单价\数量,计算出交易金额?

    #数量:股转换成手
    SELECT trans_id,stock_name,stock_code,volume/100 FROM t_stock_trans_dtl;    
    #计算交易金额:
    SELECT price,volume,price*volume //←这就是交易总价 FROM t_stock_trans_dtl;    

    【注意:】

    算数操作符优先级:*、/ >> +、-

    例如:

    SELECT a-b*c/d+1 == SELECT a-((b*c)/d)+1
    #推荐写法:
    SELECT a-((b*c)/d)+1 // 方便阅读、消除歧义

    【注意算数操作符的结果】:

    字段a(INT) = 1

    字段b(INT) = 4

    SELECT a/b :
    # 在mysql中返回:0.2500

    【注意:】

    算数操作符仅支持数值型字段

     

    字段拼接

    多个字段合并成一个字段

    例如:

    将股票名称和代码组合输出;形如:按照“洪都航空(sh600316)”进行输出:

    使用拼接操作符加号(+)或两个斜杠(||)

    -- Access、SQL Sever:
    SELECT stock_name + '('+ stock_code +')' FROM t_stock_trans_dtl;

    -- DB2、Oracle、Teradata
    SELECT stock_name || '('|| stock_code ||')' FROM t_stock_trans_dtl;

    -- MySQL
    SELECT CONCAT(stock_name ,'(', stock_code, ')') FROM t_stock_trans_dtl;  
    -- MySQL 利用函数关键字: CONCAT 实现字符的拼接;参数之间用逗号(,)分隔开

    【拼接操作符仅支持字符型字段!!!】

     

    使用别名

    创建新的输出字段名

    使用关键字:AS 为表达式取一个别名

    SELECT CONCAT(stock_name ,'(', stock_code, ')') AS name_code
    //AS(可省略) 后面的别名直接输入不带引号,中英文都可,但是不能有分隔符;如果要带分隔符,在首位加上引号('')
    FROM t_stock_trans_dtl;  

    【建议:】

    不论中文别名中是否有空格,都用引号引起来

  • 相关阅读:
    dd命令测试linux磁盘读写
    centos7的启动流程
    一次服务端不响应报文情况
    主机负载高cpu使用低的一次排查
    待宰的高羊 实验六 团队作业3:团队项目需求调研与原型开发
    DOSbox中向B800段写入数据后屏幕上什么都不显示怎么办?
    用calibre传书到kindle后不显示封面怎么办?
    AURIXTC297 FreeRTOS移植工程分享
    计算机组成与体系结构
    uniapp 支付宝支付 义美
  • 原文地址:https://www.cnblogs.com/77-is-here/p/12800107.html
Copyright © 2020-2023  润新知