一、简介
1、什么是数据库
2、数据库的类型
1、关系型数据库:Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL等 可以用SQL语句方便的在一个表以及多个表之间做非常复杂的数据查询;事务支持良好,使得对于安全性能很高的数据访问要求得以实现
2、非关系型数据库:redis,MongoDb等 性能高,不需要经过SQL层的解析
3、常见的数据库类型
二、数据库增删改查的操作
1、增
含义 |
||
CREATE DATABASE |
||
CREATE TABLE |
创建新表 |
( …. ); |
INSERT INTO |
两种编写形式 1、第一种形式无需指定要插入数据的列名,只需提供被插入的值即可 INSERT INTO table_name VALUES (value1,value2,value3,… INSERT INTO table_name (column1,column2,column3,…) VALUES (value1,value2,value3,…); |
2、删
含义 |
||||
DELETE |
||||
删除速度 drop>truncate>delete
3、改
含义 |
模板 |
||
UPDATE |
执行没有 WHERE 子句的 UPDATE 要慎重,再慎重。 在 MySQL 中可以通过设置 sql_safe_updates 这个自带的参数来解决,当该参数开启的情况下,你必须在update 语句后携带 where 条件,否则就会报错。 |
4、查
1、select语句
含义 |
模板 |
||
DISTINCT |
|||
WHERE (②、③) |
SELECT column_name,column_name FROM table_name |
||
AND & OR |
|||
ORDER BY (④、⑤) |
SELECT column_name,column_name FROM table_name |
||
(⑥) |
FROM table_name |
||
在 WHERE 子句中规定多个值 |
FROM table_name |
1、select * from Websites where name in (‘Google’,’菜鸟教程‘); 2、select * from Websites where name=’Google’ or name=’菜鸟教程‘; |
|
FROM table_name |
WHERE (alexa BETWEEN 1 AND 20) AND country NOT IN (‘USA’, ‘IND’); |
||
5、多表连接
语法 |
含义 |
模板 |
备注 |
INNER JOIN&JOIN |
1、SELECT column_name(s) FROM table1 INNER JOIN table2 |
||
LEFT JOIN |
SELECT column_name(s) LEFT JOIN table2 |
||
RIGHT JOIN |
SELECT column_name(s) FROM table1 RIGHT JOIN table2 |
6、函数
语法 |
含义 |
模板 |
备注 |
AVG() |
SELECT AVG(column_name) FROM table_name |
||
COUNT() |
COUNT(column_name) COUNT(*) 返回表中的记录数 COUNT(DISTINCT column_name) |
同左 |
聚合函数 |
MAX() |
SELECT MAX(column_name) FROM table_name; |
聚合函数 |
|
MIN() |
SELECT MIN(column_name) FROM table_name; |
聚合函数 |
|
SUM() |
返回总和 |
SELECT SUM(column_name) FROM table_name; |
聚合函数 |
GROUP BY |
SELECT column_name, aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name; |
||
HAVING (⑦) |
SELECT column_name, aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name |
②、WHERE 子句中的运算符
= |
||
<> |
||
> |
||
< |
小于 |
|
>= |
||
<= |
小于等于 |
③、WHERE 子句并不一定带比较运算符,当不带运算符时,会执行一个隐式转换。当 0 时转化为 false,1 转化为 true。
例如:
SELECT studentNO FROM student WHERE 0
则会返回一个空集,因为每一行记录 WHERE 都返回 false。
SELECT studentNO FROM student WHERE 1
返回 student 表所有行中 studentNO 列的值。因为每一行记录 WHERE 都返回 true。
先按照第一个column name排序,在按照第二个column name排序
1)、先将country值这一列排序,同为CN的排前面,同属USA的排后面;
2)、然后在同属CN的这些多行数据中,再根据alexa值的大小排列。
3)、ORDER BY 排列时,不写明ASC DESC的时候,默认是ASC。
order by A desc,B 这个时候 A 降序,B 升序排列
order by A ,B desc 这个时候 A 升序,B 降序排列
即 desc 或者 asc 只对它紧跟着的第一个列名有效,其他不受影响,仍然是默认的升序。
⑥、
%a |
以a结尾的数据 |
a% |
以a开头的数据 |
%a% |
含有a的数据 |
_a_ |
三位且中间字母是a的 |
_a |
两位且结尾字母是a的 |
a_ |
两位且开头字母是a的 |
关键字 |
|||
原始表 |
group by子句的前面 |
||
分组后的结果集 |
group by子句的后面 |
原文地址:https://blog.csdn.net/qq_53631388/article/details/134743178
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_44394.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!