MySQL简单操作(5)-操作数据表中的记录

插入记录

  • INSERT

    1
    INSERT [INTO] tal_name [(col_name,...)] {VALUES|VALUE}({expr|DEFAULT},...),(...),...;
    • expr 表达式

      举例:

      1
      INSERT users VALUES(NULL,'Tom','123',25,1);

      自动递增的字段设置成NULLDEFAULT将自增的值

  • INSERT SET

    1
    INSERT [INTO] tal_name SET col_name={expr|DEFAULT};

    与第一种方式的区别是,这个方法可以使用子查询(subQuery)

  • INSERT SELECT

    1
    INSERT [INTO] tal_name (col_name,...) SELECT ...;

    可以将查询结果插入到指定数据表

更新记录 UPDATE

  • 表单更新

    1
    UPDATE [LOW_PRIORITY] [IGNORE] table_reference SET col_name1={exp1|DEFAULT}[,col_name2={exp2|DEFAULT}]... [WHERE where_condition];

删除记录 DELETE

  • 表单删除

    1
    DELETE FROM tal_name [WHERE where_condition];

查询表达式解析

SELECT 查找记录

1
2
3
4
5
6
7
8
9
SELECT select_expr [,select_expr ...]
[
FROM table_references
[WHERE where_condition]
[GROUP BY {col_name | position} [ASC | DESC], ...]
[HAVING where_conditon]
[ORDER BY {col_name | expr | position} [ASC|DESC], ...]
[LIMIT {[offset,] row_count | row_count OFFSET offset}]
];

select_expr 查询表达式

  • 每一个表达式表示想要的一列,必须有至少一个
  • 多个列之间以英文逗号分隔
  • 星号()表示所有列,tab_name.可以表示命名表的所有列
  • 查询表达式可以使用[AS] alias_name为其赋予别名
  • 别名可用于GROUP BY, ORDRE BY或HAVING子句

WHERE 条件表达式

对记录进行过滤, 如果没有指定WHERE子句,则显示所有记录。
WHERE表达式中,可以使用MySQL支持的函数或运算符

GROUP BY 对查询结果分组

1
[GROUP BY {col_name | position} [ASC | DESC], ...]
  • ASC 升序,默认
  • DESC 降序

HAVING 设置分组条件

[HAVING where_conditon]

GROUP BY 对查询结果排序

1
[ORDER BY {col_name | expr | position} [ASC|DESC], ...]

LIMIT 限制查询数量

1
[LIMIT {[offset,] row_count | row_count OFFSET offset}]

Powered by Hexo and Hexo-theme-hiker

Copyright © 2013 - 2021 朝着牛逼的道路一路狂奔 All Rights Reserved.

访客数 : | 访问量 :