【SQL语句】
一、MYSQL
1、创建数据库
CREATE DATABASE 数据库名;
2、删除数据库
drop
drop database <数据库名>;
二、数据类型
1、数值类型
1)小整数型、大整数型、极大整数型、单精度浮点型、双精度浮点型、小数型
说明:float精度为4字节,double精度为8字节,decimal精度为28~29位
对精度要求不高的情况下,应尽量使用单精度型,而对精度要求较高的情况,可使用双精度型。小数型一般用于高精度
2、日期和时间类型
1)
3、字符串类型
char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。
CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。
三、语句
1、删除数据表
1)drop
DROP TABLE table_name ;
2、插入数据
INSERT INTO 表 ( 字段, field2,...fieldN ) VALUES ( 值, value2,...valueN );
3、关于where条件
------是一个约束声明
1)可以使用 AND 或者 OR 指定一个或多个条件。
2)使用主键来作为 WHERE 子句的条件查询是非常快速的。-慢SQL优化
条件执行顺序
谷歌来的顺序是这样的
- FROM, including JOINs
- WHERE
- GROUP BY
- HAVING
- WINDOW functions
- SELECT
- DISTINCT
- UNION
- ORDER BY
- LIMIT and OFFSET
4、DELETE 语句
DELETE FROM 表 [WHERE Clause]
- 如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除。
- delete,drop,truncate 都有删除表的作用,区别在于:
- 1、delete 和 truncate 仅仅删除表数据,drop 连表数据和表结构一起删除,打个比方,delete 是单杀,truncate 是团灭,drop 是把电脑摔了。
- delete 是 DML 语句,操作完以后如果没有不想提交事务还可以回滚,truncate 和 drop 是 DDL 语句,操作完马上生效,不能回滚
- 执行的速度上,drop>truncate>delete 打个比方,drop 是神舟火箭,truncate 是和谐号动车,delete 是自行车。
5、like语句
LIKE 子句中使用百分号%字符来表示任意字符,如果没有使用百分号%, 那么 LIKE 子句与等号=的效果是一样的。
like 匹配/模糊匹配,会与 % 和 _ 结合使用。
'%a' //以a结尾的数据
'a%' //以a开头的数据
'%a%' //含有a的数据
'_a_' //三位且中间字母是a的
'_a' //两位且结尾字母是a的
'a_' //两位且开头字母是a的
%:表示任意 0 个或多个字符若是中文,请使用两个百分号(%%)表示。
_:表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句。
[]:表示括号内所列字符中的一个(类似正则表达式)。指定一个字符、字符串或范围,要求所匹配对象为它们中的任一个。
[^] :表示不在括号所列之内的单个字符。其取值和 [] 相同,但它要求所匹配对象为指定字符以外的任一个字符。
查询内容包含通配符时,由于通配符的缘故,导致我们查询特殊字符 “%”、“_”、“[” 的语句无法正常实现,而把特殊字符用 “[ ]” 括起便可正常查询。
6、UNION 操作符
作用:UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。
UNION 语句:用于将不同表中相同列中查询的数据展示出来;(不包括重复数据)
UNION ALL 语句:用于将不同表中相同列中查询的数据展示出来;(包括重复数据)
SELECT 列名称 FROM 表名称 UNION SELECT 列名称 FROM 表名称 ORDER BY 列名称; SELECT 列名称 FROM 表名称 UNION ALL SELECT 列名称 FROM 表名称 ORDER BY 列名称;
7、排序
ASC --升序
DESC --降序
如果字符集采用的是 gbk(汉字编码字符集),直接在查询语句后边添加 ORDER BY:
SELECT * FROM runoob_tbl ORDER BY 列名;
如果字符集采用的是 utf8(万国码),需要先对字段进行转码然后排序:
SELECT * FROM runoob_tbl ORDER BY CONVERT(列名 using gbk);
8、GROUP BY 语句
GROUP BY 语句根据一个或多个列对结果集进行分组。
在分组的列上我们可以使用 COUNT, SUM, AVG,等函数。
9、JOIN连接表
SQL连接表(内连接、左连接、右连接、交叉连接、全外连接)_sql 内连接-CSDN博客
你可以在 SELECT, UPDATE 和 DELETE 语句中使用 Mysql 的 JOIN 来联合多表查询。
JOIN 按照功能大致分为如下三类:
- INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。
- 内连接,又叫等值连接,只返回两个表中连接字段相等的行。
- LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录,如果在右表中找不到匹配的行,则使用NULL 代替显示。。
- 返回左表中所有的记录以及右表中连接字段相等的记录
- RIGHT JOIN(右连接):与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录,如果在左表中找不到匹配的行,则使用NULL 代替显示。。
- 右连接,返回右表中所有的记录以及左表中连接字段相等的记录。
- full join : 外连接,返回两个表中的行:left join + right join。
10、剩余部分
原文地址:https://blog.csdn.net/weixin_42333261/article/details/140543586
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!