数据库中数据表的格式一般不是应用程序所需要的格式,如:

  1. 在一个字段中既显示公司名有显示公司地址,但这两个数据一般不在一张表中
  2. 城市,州和邮政编码在不同的列中,但邮件标签打印程序需要把他们作为一个恰当的标签打印出来

拼接字段

  在MySQL中的select语句中可以用concat(或Concat)函数拼接两列,concat需要指定一个或多个串,各串之间用逗号分隔。

select concat(num,'(',grade,')') from stu_info;
+---------------------------+
| concat(num,'(',grade,')') |
+---------------------------+
| 000001(1006) |
| 000002(1005) |
| 000003(1009) |
| 000004(1006) |
| 000009(2004) |
| 1(1009) |
| 3(1005) |
| 4(1009) |
| 5(1005) |
+---------------------------+
9 rows in set (0.00 sec)

使用别名

  select拼接工作完成后,得到一个新的列,但这个新的列的民字是什么呢,他没有实际名字,只是一个值,但未命名的列不能用于客户机中,因为客户机没办法引用一个未命名的列。

  别名用AS关键字赋予。

select concat(num,'(',grade,')') as new_name from stu_info;
+--------------+
| new_name |
+--------------+
| 000001(1006) |
| 000002(1005) |
| 000003(1009) |
| 000004(1006) |
| 000009(2004) |
| 1(1009) |
| 3(1005) |
| 4(1009) |
| 5(1005) |
+--------------+
9 rows in set (0.00 sec)

  任何客户机都可以按名引用这个列。他像实际的列表一样。

执行算数计算

select id,price,price*num as sum_price from order

  sum_price作为一个计算字段,此计算为price*num,用圆括号括起来可区分优先级,支持的算术操作符为:+,-,*,/

拓展

  select实际上就是一个输出语句,select 2*3;输出6,select now();输出当前日期

  

MySQL创建计算字段的更多相关文章

  1. mysql必知必会--创建计算字段

    计算字段 存储在数据库表中的数据一般不是应用程序所需要的格式.下面举 几个例子. * 如果想在一个字段中既显示公司名,又显示公司的地址,但这两 个信息一般包含在不同的表列中. * 城市.州和邮政编码存 ...

  2. mysql创建计算列(5.7以后才有)

    mysql创建计算列   mysql> create table t(id int auto_increment not null,c1 int,c2 int,c3 int as (c1+c2) ...

  3. SQL 必知必会·笔记<5>创建计算字段

    字段(field) 基本上与列(column)的意思相同,经常互换使用,不过数据库列一 般称为列,而术语字段通常与计算字段一起使用. 拼接(concatenate) 将值联结到一起(将一个值附加到另一 ...

  4. MySQL必知必会(创建计算字段(field))

    #字段(field)基本上和列(column)的意思相同 SELECT Concat(vend_name, ' (', vend_country, ')') FROM vendors ORDER BY ...

  5. Bug解决:mysql 创建表字段Double类型长度

    excel导入数据进行新增时,发现安装高度和可视距离在数据库创建都是double类型 程序跑完,执行成功后,数据库的数据是2,小数点后的数据没有了 打印sql并执行后发现sql并没有错误, 检查数据库 ...

  6. mysql创建计算列

    mysql> create table t(id int auto_increment not null,c1 int,c2 int,c3 int as (c1+c2),primary key( ...

  7. mysql 创建时间字段

    alter table table1 add order_date datetime null; mysql> select * from table1; +----------+------- ...

  8. MySQL快速回顾:计算字段与函数

    9.1 计算字段 存储在数据库表中的数据一般不是应用程序所需要的格式.比如: 如果想要在一个字段中既显示公司名,又显示公式的地址,但这两个信息一般包含在不同的表列中. 城市.州和邮政编码存储在不同的列 ...

  9. SQL必知必会 -------- 通配符、计算字段、函数

    1.LIKE操作符 1.1百分号(%)通配符 SELECT prod_id, prod_name FROM Products WHERE prod_name LIKE 'Fish%' 此例子使用了搜索 ...

随机推荐

  1. Python发送四种格式的post请求的代码样例

    x-www-form-urlencoded: path = "/api/v1/topics/update"params={'accesstoken':'d38a77f0-6f29- ...

  2. Linux分区和挂载的理解

    在工作中经常使用到Linux,对分区和挂载的概念一直都很模糊,对网上的信息进行了整理,方便理解. 1为什么要分区(需理解硬盘的组成) 1)数据的安全性,因为每个分区的数据是分开的.所以,当你需要将某个 ...

  3. MySQL:用户管理

    用户管理部分 一.数据库不安全因素 非授权用户对数据库的恶意存取和破坏: 数据库中重要或敏感的数据被泄露: 安全环境的脆弱性: 二.数据库安全的常用方法 用户标识和鉴别[使用口令鉴别]::该方法由系统 ...

  4. mysql ON DUPLICATE KEY UPDATE ; 以及 同replace to 的区别.

    需求: 1)如果admin表中没有数据, 插入一条 2)如果admin表中有数据, 不插入. 一般做法: if($result = mysql_query("select * from ad ...

  5. python基础题型一

    一.执行Python脚本的两种方式 #python name.py   Python解析器 #chmod +x name.py 二.简述位.字节的关系 1Byte=8bit 三.简述ascii.uni ...

  6. django面试二

    33. django的缓存能使用redis吗?如果可以的话,如何配置? #1.安装 pip install django-redis#2.在stting中配置CACHES,可以设置多个缓存,根据名字使 ...

  7. python 正则进阶常用方法

    表达式 描述 正则表达式示例 符号 literal 匹配文本字符串的字面值literal foo rel1|rel2 匹配正则表达式rel1或rel2 foo|bar . 匹配任何字符(除了\n之外) ...

  8. python day07作业答案

    1. sum=0 a=input() for i in a: sum=sum+int(i)**3 if sum==int(a): print('水仙数') 2. lst=[100,2,6,9,1,10 ...

  9. Spring Boot 揭秘与实战(二) 数据存储篇 - MyBatis整合

    文章目录 1. 环境依赖 2. 数据源3. 脚本初始化 2.1. 方案一 使用 Spring Boot 默认配置 2.2. 方案二 手动创建 4. MyBatis整合5. 总结 4.1. 方案一 通过 ...

  10. CF1132.Educational Codeforces Round 61(简单题解)

    A .Regular Bracket Sequence 题意:给定“((” , “()” ,  “)(”,  “))”四种,问是否可以组成合法括号匹配 思路:设四种是ABCD,B可以不用管,而C在A或 ...