学习数据库是需要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.自定排序

表结构

mysql 关键字列表 mysql关键字顺序_返回结果

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 * 上做处理即可

(占位符)