-
1.MSI方式安装1个; 2.界面化配置向导; 3.修改配置文件my.ini 4.启动停止、登陆退出 mysql查看全部
-
删除函数
DROP FUNCTION [ IF EXISTS ] function_name
查看全部 -
加密函数
MD5() 信息摘要算法
PASSWORD() 密码算法
SELECT MD5('admin');
SELECT password('admin');
如果MySQL中的信息是为了Web页面做准备,尽量使用MD5进行信息加密
PASSWORD是为了修改客户端密码
查看全部 -
SET NAMES GBK; // 改变某表的编码
聚合函数
AVG() 平均值
COUNT() 计数
MAX() 最大值
MIN() 最小值
SUM() 求和
查看全部 -
日期时间函数:
NOW() 当前日期和时间
CURDATE() 当前日期
CURTIME() 当前时间
DATE_ADD() 日期变化
例如:SELECT DATE_ADD('2019-5-6', INTERVAL 1 YEAR);
SELECT DATE_ADD('2019-5-6', INTERVAL 23 DAY);
DATEDIFF() 日期差值
DATE_FORMAT() 日期格式化
例如:SELECT DATE_FORMAT('2019-6-24','%m/%d/%Y');
返回值为06/24/2019
SELECT DATE_FORMAT('2019-6-24','%m/%d/%y');
返回值为06/24/19
查看全部 -
比较运算符与函数:
[NOT] BETWEEN...AND... [不]在范围之内
例如:SELECT 23 BETWEEN 1 AND 23; 闭合区间,[1,23]
返回值为1
[NOT] IN() [不]在取值范围内
例如:SELECT 10 IN(5,10,15,20);
返回值为1
IS [NOT] NULL [不]为空
NULL为空,空字符''不为空,0不为空
查看全部 -
CEIL() 进一取整
例如:SELECT CEIL(3.026487);
返回值为4
DIV 整数除法
例如:SELECT 3 DIV 4;
返回值为0
FLOOR() 舍一取整
例如:SELECT FLOOR(3.97);
返回值为3
MOD 取余数
例如:SELECT 5 MOD 3;
返回值为2
POWER() 幂运算
例如:SELECT POWER(3,3); 代表3的3次方
返回值为27
ROUND() 四舍五入
例如:SELECT ROUND(3.655,2); 四舍五入小数点后留两位
返回值为3.66
TRUNCATE() 数字截取
例如:SELECT TRUNCATE(3.655,2); 直接截图小数位数,不进行四舍五入
返回值为3.65
查看全部 -
字符函数:
CONCAT() 字符连接
例如:SELECT CONCAT('mm','MYSQL');
返回值:mmMYSQL
CONCAT_WS() 使用指定的分隔符进行字符连接
例如:CONCAT_WS('|','A','B','C');
返回值:A|B|C
CONCAT_WS('|',id,username) FROM test;
FORMAT() 数字格式化
例如:SELECT FORMAT(15265.57,1);
返回值:15,265.6
LOWER() 转换成小写字母
UPPER() 转换成大写字母
LEFT() 获取左侧字符
RIGHT() 获取右侧字符
例如:SELECT LOWER(LEFT('MySQL',2));
LENGTH() 获取字符长度,空格也算
LTRIM() 删除前导空格
RTRIM() 删除后续空格
TRIM() 删除前导和后续空格
REPLACE() 字符串替换
例如:SELECT REPLACE('??My??SQL???','?',''); 将?替换成空
返回值:MySQL
SUBSTRING() 字符串截取
例如:SELECT SUBSTRING('MySQL',1,2); 从第一位开始截取两位
返回值:My
SELECT SUBSTRING('MySQL',3); 代表从第三位开始截取,到结尾
返回值:SQL
SELECT SUBSTRING('MySQL',-4); 代表从结尾开始往前截取
返回值:ySQL
SELECT SUBSTRING('MySQL',-3,-1);
返回值为空,MySQL中不允许这种写法,只能起始位为负值,长度不能为负值
[NOT] LIKE 模式匹配
例如:SELECT 'MySQL' LIKE 'MS%'; 百分号%代表任意一个或者多个字符,下划线_代表任意一个字符
返回值为1,代表true;0代表false
SELECT * FROM test WHERE username LIKE '%1%%' ESCAPE '1'; 代表查找用户名中包含%字符的结果,1后边的%不需要再进行解析,直接认为是字符%,其中1可以为任意的一个字符。
查看全部 -
MySQL中实现多表删除
delete t1 from tdb_goods as t1 //从本表中删除,将tdb_goods看做t1 left join (select goods_id,goods_name from tdb_goods group by goods_name having count(goods_name)>=2) as t2 //子查询得到重复条目 on t1.goods_name=t2.goods_name //t1和t2的连接条件 where t1.goods_id>t2.goods_id; //删除id号较大的条目
查看全部 -
-- 查找所有分类及其父类
SELECT s.type_id,s.type_name,p.type_name FROM tdb_goods_types AS s LEFT JOIN tdb_goods_types AS p ON s.parent_id = p.type_id;
-- 查找所有分类及其子类
SELECT p.type_id,p.type_name,s.type_name FROM tdb_goods_types AS p LEFT JOIN tdb_goods_types AS s ON s.parent_id = p.type_id;
-- 查找所有分类及其子类的数目
SELECT p.type_id,p.type_name,count(s.type_name) AS children_count FROM tdb_goods_types AS p LEFT JOIN tdb_goods_types AS s ON s.parent_id = p.type_id GROUP BY p.type_name ORDER BY p.type_id;
04:58
查看全部 -
数据表瘦身之后,需要呈现给客户看的时候,要将更替的数字变成文字,此时就需要多表连接:
MySQL中Select语句、多表更新、多表删除语句中支持JOIN操作。
table reference {INNER | CROSS] JOIN | {LEFT | RIGHT) [OUTER] JOIN table_reference ON conditional_expr
【注意】1.数据表可以使用tbl_name AS alias_name或tbl_name alias_name赋予别名。
2.table-subquery可以作为子查询使用在FROM子句中,这样的子查询必须为其赋予别名。3.通常使用ON关键字来设定连接条件,使用WHERE关键字进行结果集记录的过滤。
{内连接:仅显示符合连接条件的记录,比如
外键连接:左外连接:显示左表符合查找条件的全部;右外连接:显示右表符合查找条件的全部。}
三张表进行连接:
如:SELECT goods_name, goods_id,cate_name,brands_name,goods_price FROM tdb_goods AS g INNER JOIN tdb_goods_cate AS c ON g.cate_id=c.cate_id INNER JOIN tdb_goods_brands AS b ON g.brands_id=b.brands_id\G;
呈现出的就是经过连接形成的可以给客户看懂的数据表。
【NOTE】
外连接:
A LEFT JOIN B join_condition(左外连接,右外连接情况下调换AB就可)
数据表B的结果集依赖数据表A。(A中有的记录才可以在B中显示,否则不显示)
数据表A的结果集根据左连接条件依赖所有数据表(B表除外)。
左外连接条件决定如何检索数据表B(在没有指定WHERE条件的情况下)。(A表决定B表)
如果数据表A的某条记录符合WHERE条件,但是在数据表B不存在符合连接条件的记录,将生成一个所有列为空的额外的B行。如果使用内连接查找的记录在连接数据表中不存在,并且在WHERE子句中尝试以下操作: col-namd IS NULL时,如果col-name被定义为NOT NULL, MySQL将在找到符合连执着条件的记录后停止搜索更多的行。
查看全部 -
外连接:左外连接,右外连接
左外连接:显示左表的全部记录及右表符全连接条件的记录,如果左表的某个字段记录右表不满足,则那个数据为NULL
右外连接:显示右表的全部记录及左表符全连接条件的记录,如果右表的某个字段记录左表不满足,则那个数据为NULL
查看全部 -
mysql中的ROW_COUNT()可以返回前一个SQL进行UPDATE,DELETE,INSERT操作所影响的行数
查看全部 -
连接类型:
内连接:JOIN /CROSS JOIN / INNER JOIN 是等价的:仅显示符合条件的记录
LEFT [OUTER] JOIN 左外连接
RIGHT [OUTER] JOIN 右外连接
连接条件:
使用 ON 来设定连接条件
使用WHERE 进行结果集的过滤
SELECT goods_id, goods_name,cate_name FROM tdb_goods INNER JOIN tdb_goods_cates ON tdb_goods.cate_id = tdb_goods_cate.cate_id;
查看全部 -
数据表参照
table_reference
tbl_name [[AS] alias] | table_sabquery [AS] alias
数据表可以使用tbl_name AS alias_name
或tbl_name alias_name 赋予别名
table_subquery可以作为子查询使用在FROM子句中
这样的子查询必须为其赋予别名
MySQL 在SELECT 语句 多表更新 多表删除语句中支持JOIN 操作
语法结构
table_reference
{[INNER|CROSS] JOIN {LEFT|RIGHT} [OUTER] JOIN}
table_reference
ON conditional_expr
基本类型:A表 链接类型 B表 两张表的链接条件
查看全部
举报