mysql数据库 基础教程

查询数据

SELECT 
    column_1, column_2, ...
FROM
    table_1
[INNER | LEFT |RIGHT JOIN table_2 ON conditions]
WHERE
    conditions
GROUP BY column_1
HAVING group_conditions
ORDER BY column_1
LIMIT offset, length;

SELECT语句由以下列表中所述的几个子句组成:

  • SELECT 之后是逗号分隔列或星号(*)的列表,表示要返回所有列。

  • FROM 指定要查询数据的表或视图。

  • JOIN 根据某些连接条件从其他表中获取数据。

  • WHERE 过滤结果集中的行。

  • GROUP BY 将一组行组合成小分组,并对每个小分组应用聚合函数。

  • HAVING 过滤器基于GROUP BY子句定义的小分组。

  • ORDER BY 指定用于排序的列的列表。

  • LIMIT 限制返回行的数量。

语句中的SELECTFROM语句是必须的,其他部分是可选的。

SELECT DISTINCT运算符来消除结果集中的重复行。

 

过滤数据

  • WHERE   根据指定的条件过滤行记录。

  • AND运算符   组合布尔表达式以形成用于过滤数据的复杂条件。

  • OR运算符   与AND运算符组合以过滤数据。

  • IN运算符   确定值是否匹配列表或子查询中的指定值。

  • BETWEEN运算符   根据指定范围查询数据。

  • LIKE   基于特定模式匹配查询数据,以执行一些模糊查询。

  • LIMIT   限制返回的行数。

  • IS NULL   测试值是否为NULL

  • 比较运算符   =,<> 或 !=,>,>=,<,<=

 

排序数据

  • ORDER BY   排序结果集。

  • ORDER BY FIELD()   自定义排序顺序。

  • AES  升序排序,DESC  降序排序。

 

分组数据

  • GROUP BY子句   根据列或表达式将行记录分组到子组。

  • HAVING子句   按特定条件过滤组。

 

修改数据

  • INSERT INTO语句   将数据插入到数据库表中。

  • UPDATE语句   更新数据库表中的数据。

  • DELETE语句   从表中删除数据。

INSERT INTO table_1(column1,column2...) VALUES (value1,value2,...);  # 插入一行
INSERT INTO table_1(column1,column2...) VALUES (value1,value2,...),(value1,value2,...),...;  # 插入多行
INSERT INTO table_1 VALUES (value1,value2,...);  # 为所有列指定相应的值
INSERT INTO table_1 SELECT c1,c2 FROM table_2;  # 使用SELECT语句返回的列和值来填充INSERT语句的值

注意,不必为自动递增列指定值,因为MySQL会自动为自动递增列生成值。

UPDATE [LOW_PRIORITY] [IGNORE] table_name 
SET 
    column_name1 = expr1,
    column_name2 = expr2,
    ...
WHERE
    condition;

在上面UPDATE语句中:

  • 首先,在UPDATE关键字后面指定要更新数据的表名。
  • 其次,SET子句指定要修改的列和新值。要更新多个列,请使用以逗号分隔的列表。以字面值,表达式或子查询的形式在每列的赋值中来提供要设置的值。
  • 第三,使用WHERE子句中的条件指定要更新的行。WHERE子句是可选的。 如果省略WHERE子句,则UPDATE语句将更新表中的所有行。

MySQL在UPDATE语句中支持两个修饰符。

  • LOW_PRIORITY修饰符指示UPDATE语句延迟更新,直到没有从表中读取数据的连接。LOW_PRIORITY仅对使用表级锁定的存储引擎(例如MyISAMMERGEMEMORY)生效。
  • 即使发生错误,IGNORE修饰符也可以使UPDATE语句继续更新行。导致错误(如重复键冲突)的行不会更新。
DELETE FROM table_name WHERE condition;

除了从表中删除数据外,DELETE语句返回删除的行数。

 

CASE WHEN

1. 简单 CASE

CASE case_expression
    WHEN when_expression_1 THEN commands
    WHEN when_expression_2 THEN commands
    ...
ELSE expression
END

2. 搜索 CASE

CASE
    WHEN condition_1 THEN commands
    WHEN condition_2 THEN commands
    ...
ELSE expression
END

 

转载于:https://www.cnblogs.com/yutb/p/9842394.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值