Mysql 从零开始

学习数据库是需要sql基础的,一个学习sql的好去处:W3c SQL教程

Mysql 介绍

(占位符)

Mysql的使用

mysql 关键字

核心关键字

名称作用
select指定需返回的字段
left/right/inner join on指定执行多表的左/右/内 连接操作
where指定返回结果集限制条件(不可协同函数)
group by指定返回结果集合并条件
having指定返回结果集限制条件(可协同函数)
order by指定返回结果集根据什么排序
limit指定返回结果集取值起止位置

  
常用关键字

名称作用
as将 as 后的名称指定为 as 前参数的别名
union将 union 前后的结果集进行合并
truncate重置(原理类似删除表然后重建结构相同的表,表自增字段index会重置)
delete删除(比truncate慢的原因——遍历表并对各记录删除一次,表自增字段index会保留,指定条件删除部分记录)
drop废弃,删库和删表用

mysql 关键字顺序

mysql 的sql语句是需要符合一定规范的,其中之一便是关键字的顺序,需要注意的是,书写顺序无法决定关键字的执行顺序。

(栗子:单句sql语句中。select、where序号分别为1、4,所以where只能书写在select之后 如: select ……where……;)

书写顺序:

  1. select
  2. from
  3. left/right join on
  4. where
  5. group by
  6. having
  7. order by
  8. limit

(栗子:单句sql语句中。在即使用了where关键字又使用了having关键字的情况下,where、having序号分别为3、5,所以在语句执行时,先会执行where的条件来过虑返回的结果集,在一定时间后再执行having的条件来过虑返回的结果集)

执行顺序:

  1. from
  2. left/right join on
  3. where
  4. group by
  5. having
  6. select
  7. order by
  8. limit

mysql 函数

常见函数

类别含义
count(指定目标)计算指定目标的个数
avg(指定目标)计算指定目标的平均值
max(指定目标)计算指定目标中的最大数
min(指定目标)计算指定目标中的最小数
abs(指定目标)计算指定目标中的绝对值

  
更多函数

mysql 命令实操

Mysql命令大全传送门

mysql 语句实际问题

1.自定排序

表结构
表结构

SELECT
    *
FROM
    massage
WHERE
    mid IN (23, 7, 2)

选择message表中mid为23、7、2的字段,也许你在期待按23、7、2的顺序来显示三条字段。但结果却不是,原因是mysql 默认没写order by时按主键进行默认方式排序(数字类型默认按从小到大,字符串类型默认字典排序,可手工设置)
但如果真想按23、7、2的顺序输出记录呢?

SELECT
    *
FROM
    massage
WHERE
    mid IN (23, 7, 2)
ORDER BY field(mId,23,7,2) // field 为数据库提供的一个函数 filed(“指定目标”,顺序……) 
// 此处为 mid 以 23、7、2的顺序返回结果集

2.多表查询时的连接语法

MySQL各join语法示例传送门

3.查询表属性

SELECT
    *
FROM
    information_schema. COLUMNS
WHERE
    table_name = '查询目标表名'

执行上述 SQL 会得到表查询结果集,需要特定结果在 select * 上做处理即可

(占位符)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值