DQL,Data Query Language,数据查询

# 基础查询
/*
语法:
select 查询列表 from 表名;

特点:
1、查询列表可以是:表中的字段,常量值、表达式、函数,也可以是多个组合
2、查询结果是1个虚拟表格,供查看
*/
USE myemployees;

#1.查询表中的单个字段
SELECT last_name FROM employees;

#2.查询表中的多个字段
SELECT last_name,salary,email FROM employees;

#3.查询表中的所有字段
SELECT * FROM employees;

#4.查询常量值, 字段名也显示为常量值(没什么卵用)
SELECT 100;
SELECT 'zhangjin';
注意:字符型和日期型常量必须使用单引号,数值型不需要

#5.查询表达式:字段名为表达式,字段值为计算结果
SELECT 100*98;
SELECT 100%98;
注意:复杂的运算,++ --不支持

#6.查询函数: 字段名为函数(),字段值为函数执行结果
SELECT VERSION();
SELECT DATABASE();
注意:select必须写,就是用select来触发函数执行
mysql中的函数一定有返回值

#7.字段起别名:
/*
1)查询结果中的字段名就显示为别名,便于识别
2)简化过长的字段名
3)区分重名的字段,使用别名(多表查询)
*/

#方式一:使用as
SELECT VERSION() AS sqlversion;
SELECT last_name AS 姓, first_name AS 名 FROM employees;

#方式二:省略as, 使用空格
SELECT last_name 姓, first_name 名 FROM employees;

#案例:查询salary,显示结果为out put
#别名中有特殊字符(空格,#),使用“”
SELECT salary AS "out put" FROM employees;

#8.去重
#案例:查询员工表中涉及到的所有部门编号
SELECT DISTINCT department_id FROM employees;
注意:不支持多字段去重,原因在于多个字段去重后表格会出现不规则的情况(a,10行,b 20行)

#9.+号的作用
/*
Java中的+: 连接字符串,数字运算
MySQL中的+: 只有数字运算(尝试将字符转换为数字,然后做加法;转换失败,则将字符转为0)
只要一方为null,则+结果也为null

select null+123;
*/

#案例:查询员工名和姓,连接为1个字段,并显示为 姓名
#字符拼接函数:concat(str1,str2,...)
SELECT CONCAT(last_name,first_name) AS 姓名 FROM employees;

#10 替换null

# 将为null的commission_pct替换为0
SELECT IFNULL(commission_pct,0) AS commission FROM employees;

# 将替换后的commission_pct用于结果拼接 (否则concat结果也为Null)
SELECT CONCAT(employee_id, ',',last_name, ',', IFNULL(commission_pct,0)) AS "OUT_PUT"
FROM employees;

#11 判断null
isnull(commission_pct)
判断某个字段是否为null, 是则返回1,否则返回0

01_MySQL DQL_基础查询的更多相关文章

  1. HQL基础查询语句

    HQL基础查询语句 1.使用hql语句检索出Student表中的所有列 //核心代码 @Test public void oneTest() { Query query=session.createQ ...

  2. Mego开发文档 - 基础查询

    基础查询 Mego 使用语言集成查询(LINQ)从数据库查询数据.LINQ允许您使用C#(或其他.NET语言)根据派生的上下文和实体类编写强类型查询.将LINQ查询的表示传递给数据库提供者,翻译为数据 ...

  3. T-SQL基础查询——单表查询

    1,查询的顺序 SELECT empid, YEAR(orderdate) AS orderyear, COUNT(*) AS numorders FROM Sales.Orders GROUP BY ...

  4. Mongodb 基础 查询表达式

    数据库操作 查看:show dbs; 创建:use dbname; // db.createCollection('collection_name');    隐式创建,需要创建的数据库中有表才表示创 ...

  5. mysql基础查询语法

    一.mysql查询的五种子句 where子句(条件查询):按照“条件表达式”指定的条件进行查询. group by子句(分组):按照“属性名”指定的字段进行分组.group by子句通常和count( ...

  6. SQL基础--查询之三--嵌套查询

    SQL基础--查询之三--嵌套查询

  7. SQL基础--查询之五--查询语句一般格式

    SQL基础--查询之五--查询语句一般格式

  8. SQL基础--查询之四--集合查询

    SQL基础--查询之四--集合查询

  9. SQL基础--查询之一--单表查询

    SQL基础--查询之一--单表查询

随机推荐

  1. (2.13)备份与还原--sql server数据库主要状态和切换路径

    SQLSERVER数据库主要状态和切换路径 关键词:数据库状态 一个SQLSERVER数据库会处于很多种状态,例如 ONLINE .RESTORING .RECOVERING .RECOVERY_PE ...

  2. Apache Spark 2.0三种API的传说:RDD、DataFrame和Dataset

    Apache Spark吸引广大社区开发者的一个重要原因是:Apache Spark提供极其简单.易用的APIs,支持跨多种语言(比如:Scala.Java.Python和R)来操作大数据. 本文主要 ...

  3. C# DataTable Column DataType 对应 数据库

      public DataTable MakeDataTable(){ DataTable myTable; DataRow myNewRow; // Create a new DataTable. ...

  4. VirtualBox AndroidX86 网络设置

    在Virtualbox中,把虚拟机网络设为“网络地址转换(NAT)”模式,高级中控制芯片(T)选择:PCnet-FAST III(Am79C973), 然后启动你的android-x86 4.0虚拟机 ...

  5. ruby中的instance_eval,class_eval,eval

    ruby具有在运行时执行以字符串形式保存的代码的功能设施,eval族方法 .包括Kernel#eval,Object#instance_eval,Module#class_eval. Kernel#e ...

  6. 2017浙江省赛 B - Problem Preparation ZOJ - 3959

    地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3959 题目: It's time to prepare the pr ...

  7. The 15th UESTC Programming Contest Preliminary M - Minimum C0st cdoj1557

    地址:http://acm.uestc.edu.cn/#/problem/show/1557 题目: Minimum C0st Time Limit: 3000/1000MS (Java/Others ...

  8. 使用selenium前学习HTML(3)— 属性

    <!-- HTML标签可以拥有属性,属性提供元素的更多的信息: 属性总是以名称/值对的形式出现,比如:name="value". 属性总是在 HTML 元素的开始标签中规定. ...

  9. 使用react常见的坑

    触摸事件 React中的触摸事件仅用三种,touchstart, touchend, touchend,可是这种会有问题,有时候我需要滚动页面的时候,很容易触发某一个元素的touchend事件,为此笔 ...

  10. 【DeepLearning学习笔记】Neurons神经元

    今天找到一个比较好的deep learning的教材:Neural Networks and Deep Learning 对神经网络有详细的讲解,鉴于自己青年痴呆,还是总结下笔记吧=.= Percep ...