Mysql基础

  这文档是我在bilibili观看视频后做的一些笔记

   1. 什么是数据库:简单点就是存储数据的仓库

2.什么是数据库管理系统:数据库管理系统就是用来管理数据库的,可以对数据库的数据进行增删改查

3.什么是sql   sql是一套标准与规范,用来管理数据库的语句基本是基于sql的。

4 启动Mysql 服务 net start mysql;  结束:net stop mysql;

5 登录 mysql -u账号 -p密码

6 退出 exit;

7 查看数据库 show databases;

8 选择数据库 user 数据库名;

9 创建数据库  create database 数据库名;

10 查询数据有哪些表 show tables;

11 查看数据库版本号 select version();

12 查看当前使用的是哪个数据库 select database();

13 mysql 语句不见;不执行 ,\c 可以结束命令的输入

14 将sql 语句导入到数据库 source sql文件路径名 路径不能有中文

15 查看表结构 desc 表名;

16 查所有 select * from 表名; 查某几个字段 select 字段名1,字段名2... from 表名;

17 取别名  select 字段名 as 别名 from 表名   as可以省略 如果别名有空格需要单引号括起来

18  条件符   = 等于 <>,!=不等于 <小于  > 大于 >= 大于等于 <= 小于等于,is null 为空 is not null 不为空,between and ,in ,not in...

19 and 与 or 同时出现 and 优先级高  想要or 先执行 则需要加小括号

20 模糊查询  like '%T' T结尾   'T%' T开头   '_A%' 第二个字符是A  '__A' 第二个字符是A  含有_的   ’%\_%‘

21 排序 order by 

22 函数 lower() 转小写  upper() 转大写

23 substr 取子串(substr( 被截取的字符串, 起始下标,截取的长度))

24 concat() 拼接

25 length()求长度

26 trim() q去空格

27 str_to_date 将字符串转换成日期   date_format 格式化日期    format 设置千分位

28 case..when..then..when..then..else..end

29 round(数字,保留小数点位数)

30 rand() :生成随机数

31 ifnull :ifnull(数据, 被当做哪个值)  NULL只要参与运算,最终结果一定是NULL。为了避免这个现象,需要使用ifnull函数。

32 和函数 (分组函数)

sum();

avg();

count();

max();

min();

注意点: 1.和函数必须分组后使用,如果没有分组则整个表默认为一组

             2.分组函数无需对null进行处理

              3.分组函数不能够直接使用在where子句中

33 关键字执行顺序

      1. from

     2. where

   3. group by

4 having

5. select

6 order by

 

USE pay_ment
INSERT INTO test VALUES(1,2)

INSERT INTO test VALUES(NULL,3)

SELECT DISTINCT id,ok FROM test
SELECT * FROM test

SELECT 100+90; 190
SELECT '123'+90 213
SELECT 'john'+90; 90
SELECT NULL+100 NULL
#ifnull(a,b)函数解释:
#如果value1不是空,结果返回a
#如果value1是空,结果返回b

SELECT IFNULL(id,100) FROM test
# between and 都包含 不能调换位置
SELECT * FROM test WHERE id BETWEEN 1 AND 0
#order by 子句中可以支持单个字段,多个字段,表达式,函数,别名;


SELECT SUBSTR('吴刚伐桂在天上',4) out_put;

SELECT CONCAT(id,'_',ok) 姓名 FROM test;

SELECT REPLACE('莉莉伊万斯的青梅竹马是詹姆','詹姆','斯内普') AS out_put;

SELECT ROUND(1.45);

SELECT RPAD('梅林',5,'&') AS out_put;

SELECT LPAD('梅林',5,'&') AS out_put;

SELECT ROUND(1.567,2);

SELECT CEIL(1.005);

SELECT CEIL(-1.002);

SELECT TRUNCATE(1.65,1);

SELECT MOD(10,3);

SELECT FLOOR(-9.99);

#5.instr:获取子串第一次出现的索引,找不到返回0
SELECT INSTR('MySQL技术进阶','技术') AS out_put;

#DATEDIFF:返回两个日期相差的天数
SELECT DATEDIFF('2020/06/30','2020/06/21');

SELECT STR_TO_DATE('2020-5-13','%Y-%c-%d') AS out_put;

#7.curdate:返回当前日期
SELECT CURDATE();

#8.curtime:返回当前时间
SELECT CURTIME();

SELECT IF(10<5,'大','小');


#case when 条件1 then 要显示的值1或语句1 when 条件2 then 要显示的值2或语句2 ... else 要显示的值n或语句n end

 

posted @ 2021-12-09 10:24  才才的博客  阅读(42)  评论(0)    收藏  举报