作为一个程序员必须要会的技能SQL语句,能写一手好的SQL能够让你在人群中出彩。找工作必问SQL关键字、复杂查询、SQL优化你真的都会吗? 每日更新一小段 请谅解
1. 增删改查
1.1 INSERT
- 该关键词用于插入数据 常用用法 insert into
INSERT INTO table_name VALUES (value1, value2,....)
INSERT INTO student VALUES('张三',18);
--在学生表中插入一条名为张三年龄18岁的数据
INSERT INTO table_name (column1, column2,...) VALUES (value1, value2,....)
INSERT INTO student(name,age) VALUES('张三',18);
1.2 DELETE
- 删除表中的一条数据(但工作中常使用逻辑删除)
DELETE FROM student
DELETE FROM table_name WHERE column_name = some_value
--删除年龄为20岁的张三
DELETE FROM student WHERE name='张三' AND age=18
1.3 UPDATE
- 更新原表中的数据
UPDATE table_name SET column_name = new_valueWHERE column_name = some_value
--修改名为张三的年龄为39岁
UPDATE student SET age=39 WHERE name='张三'
1.4 SELECT
- 查询表中的数据
- 如果SELECT后面是 *,那么表示查询所有字段
- SELECT后面的查询列表,可以是表中的字段,常量值,表达式,函数
- 查询的结果是一个虚拟的表
- select语句,可以包含5种子句:依次是where、 group by、having、 order by、limit必须照这个顺序。
SELECT * FROM table_name;
SELECT name,age FROM student;
SELECT name,age FROM student WHERE name='张三' AND age=19;
1.4.1 关联查询
用于多表之间的关联查询
关联查询分为:内连接、外连接、自连接等
- 内连接:INNER JOIN
- 外连接:左连接(LEFR JOIN )、右链接(RIGHT JOIN)
- 自连接:原本是通表 通过别名的方式来实现内连接
使用情况说明
- n个表连接 连接条件为n-1
- 可定义别名来进行关键查询
- 若字段名相同需要通过表的别名来区分
1.4.1.1 内连接
--内连接
SELECT field_name FROM table_A a INNER JOIN table_B b ON a.field_name=b.field_name;
1.4.1.2 外连接
--左连接
SELECT field_name FROM table_A a LEFT JOIN table_B b ON a.field_name=b.field_name
--右连接
SELECT field_name FROM table_A a RIGHT JOIN table_B b ON a.field_name=b.field_name
1.4.1.3 自连接
SELECT field_name FROM table_A a LEFT JOIN table_A b ON a.field_name=b.field_name
1.4.2 SELECT 子句
1.4.2.1 WHERE
- 设置查询条件对数据进行筛选
--查询一年级名为张三的学生
SELECt * FROM student WHERE class='一年级' AND name='张三'
1.4.2.2 GROUP BY
- 根据某个字段对查询结果进行分组
- 聚合函数如下:
- AVG(DISTINCT yd) 返回yd的平均值
- COUNT(DISTINCT yd) 返回yd NOT NULL的数值
- MIN(DISTINCT yd) 返回yd的最小值
- MAX(DISTINCT yd) 返回yd的最大值
- SUM(DISTINCT yd) 返回yd的总和
- 聚合函数案例
--计算学生平均年龄
SELECT AVG(age) FROM student;
--统计学生总人数
SELECT COUNT(*) FROM student;
--统计的是非NULL值
SELECT COUNT(studnet_id) FROM student;
--统计的是非NULL值,并且去重
SELECT COUNT(DISTINCT studnet_id) FROM student;
--查询学生最小年龄
SELECT MIN(age) FROM student;
--查询学生最大年龄
SELECT MAX(age) FROM student;
--查询学生年龄差值
SELECT MAX(age)-MIN(age) FROM student;
--查询学生年龄总和
SELECT SUM(age) FROM student;
- GRUOP BY 配合聚合函数使用
1.4.2.3 HAVING
1.4.2.4 ORDER BY
1.4.2.5 LIMIT
最后
以上就是疯狂未来最近收集整理的关于Mysql 基础语法-每个程序员都要掌握的基础知识要点1. 增删改查的全部内容,更多相关Mysql内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复