MySQL基础学习(一)——SELECT语句

select作为查询语句,在数据库的操作中是基础中的基础

目录

1、SELECT... 没有任何子句

2、SELECT...FROM

3、列的别名

4、去除重复行

5、空值参与运算

6、着重号

7、显示表结构


1、SELECT... 没有任何子句

SELECT 1

2、SELECT...FROM

SELECT      #表示选择哪些列

FORM        #表示 从哪个表中选择
2.1 (*)表示全部的列
SELECT *
FROM employees

 2.2 选择有特定的列

SELECT employee_id,last_name
FROM employees

 3、列的别名

重命名一个列,紧跟列名,也可以 在列名和别名之间加入关键字 AS ,别名使用双引号 ,以便在别名中包含空格或特殊的字符并区分大小写。AS 可以省略,建议别名简短,见名知意
SELECT last_name ln FROM employees

SELECT last_name as ln FROM employees

SELECT last_name as "ln" FROM employees

SELECT last_name "l n" FROM employees

 4、去除重复行

利用DISTINCT实现

原本数据有107条,经过下面的去重操作之后,数据只剩下15条

SELECT DISTINCT job_id 
FROM employees

5、空值参与运算

       所有运算符或列值遇到 null 值,运算的结果都为 null,这里一定要注意,在 MySQL 里面, 空值不等于空字符串。一个空字符串的长度是 0 ,而一个空值的长度是空。而且,在 MySQL 里面,空值是占用空间的。
SELECT
	employee_id,
	salary "月工资",
	commission_pct,
	salary * ( 1+commission_pct ) * 12 "年工资" 
FROM
	employees

因为有null的存在,所以在计算的时候将null也带入了公式中

解决的办法:引入IFNULL

IFNULL( commission_pct, 0 ): 第一个参数表示判断是否为null的值,如果是null,则为第二个参数

SELECT
	employee_id,
	salary "月工资",
	commission_pct,
	salary * ( 1+ IFNULL( commission_pct, 0 ) ) * 12 "年工资" 
FROM
	employees

 这样操作。年工资这一栏就永远都可以有值

6、着重号

利用``以免表名和关键字或者保留字重名

SELECT * FROM `order`

学过编程语言的同学都应该清除。起名忌讳和关键字、保留字重名,一般应该不会有人会这么操作,慎用!

7、显示表结构

使用DESC或者DESCRIBE

DESCRIBE employees
DESC employees
DESC departments

 后续若有其余方法将会继续补充

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值