Mysql基础知识



Mysql的常见命令

查询服务器版本
1.mysql服务端
select version()
2.未登录到服务端
mysql --version mysql --v
查看当前所有数据库
show database;
打开指定的库
use 库名;
查看当前库的所有表
show tables;
查看其他库的所有表
show tables from 库名;
查询所在库
select database;
查看表的结构
desc 表名


语法规范

1.不区分大小写,建议关键字大写,表名,列名小写
2.最好分号结尾
3.根据需要缩进,换行
4.注释
单行:#
单行:-- (必须有空格)
多行:/* 注释 */


DQL语言的学习

基础查询

select 查询的东西
from 表名;
(查询语句1.中间用逗号隔开2.所有字段用*或(输入或)双击(name着重号显示)需要查询的内容(哪里不会点哪里);只要是字符型都用单引号,例:‘join’)
(特点:表中的字段可以是,3.常量值select 100,4.表达式select 100%98,5.函数select version();2.查询的结果是一个虚拟的表格)
6.起别名:便于理解;区分重名情况 【别名有空格加双引号】
方法一使用as:SELECT 100%98 AS 结果;
方法二使用空格:SELECT last_name 姓,first_name 名 FROM employee; )
7.去重:关键字DISTINCT错例:distinct a,b/distinct a,distinct b;
8.+号的作用:(1)两个操作数是数值型做加法运算;(2)一方为字符型,试图将字符型数值转换为数值型,如果成功则继续加法,失败则转换成0;只要其中一方为null结果为null。例:姓和名连接成一个字段,结果为0,应该用关键字CONCAT衔接)
例题【补充ifull函数】:


条件查询

select 查询列表③
from 表名①
where 筛选条件②;

分类:
1.按条件运算符筛选:> < = + != <> >= <=
2.按逻辑表达式查询:&& || ! and or not
&&和and:两个都为true,结果为true,反之为false
||和or:一真为真,反之为false
!和not:取反
例题(注意不在90到10,或者高于15000的用法,易错):

3.模糊查询 like ; between and ; in ; is null
like:①一般和通配符搭配使用
通配符:%任意多个字符,包含0个字符;_任意单个字符
例1:包含字符a:where last_name like ‘%a%’;
例2: 第三个字符为e,第五个字符为a: __e_a%;
例3:第二个字符为下划线:like ‘- \ -%’ (like ‘- $-%’ ESCAPE ’ $ ';
ESCAPE声明转义字符)
between and:不能颠倒顺序
in:判断某字段的值是否属于in列表中的某一项
(特点:1.简洁;2.值类型必须统一或者兼容;3.不支持%)

is null/is not null:(= <>不能判断 NULL;is不能单独用;仅仅可以判断null值,可读性高)
<=>安全等于:既可以判断null,又可以判断普通的数值,可读性低
例题:


排序查询

select 查询列表
from 表
【where 筛选条件】
order by 排序列表【asc|desc】

(特点:1.asc:升序;desc降序;不写默认升序;
2.支持单个字段,多个字段,表达式,函数,别名
3.一般放在查询语句的最后面,limit子句除外)


常见函数

功能 :类似于java中的方法将一组逻辑语句封装在方法体中,对外暴露方法名;
好处:1.隐藏细节;2.提高代码的重用性
调用select 函数名(实参列表)【from 表】
特点:①函数名;②功能


分类:1.单行函数;(肯定有返回值)
如,concat,length,ifnull等
一,字符函数:
length(获取字节个数,中文占三个字节)
concat(拼接字符)
upper,lower
例题:将姓变大写,名变小写,然后拼接(嵌套函数)
SELECT CONCAT(UPPER(last_name),LOWER(first_name)) 姓名 FROM employees
substr,substring(截取字符串:索引从1开始)
SELECT SUBSTR(‘李莫愁爱上了陆展元’,7) out_put
SELECT SUBSTR(‘李莫愁爱上了陆展元’,1,3) out_put
instr(返回子串第一次出现的索引)
SELECT SUBSTR(‘杨不悔爱上了陆展元’,‘陆展元’) out_put
trim(去前后空格或指定字符)
SELECT TRIM(‘b’ FROM ‘aaaaa张aaaa翠aaaaa’) AS out_put
[返回张aaaa翠]
lpad,rpad(指定字符左(右)填充实现字符长度)
SELECT LPAD(‘殷素素’,2,’’) AS out_put;
replace替换
SELECT REPLACE(‘冷應庆爱上了陈小龙’,‘陈小龙’,‘张艺兴’)AS out_put;
二,数学函数
round(四舍五入,小数点后保留位数);
ceil(向上取整,返回>=该参数的最小整数)
floor(向下取整,返回<=该参数的最大整数)
truncate(截断[小数点后保留位数])
mod(取余[符号由被除数决定])(mod(a,b):a-a/b
b)
三,日期函数
now(返回系统日期+时间)
curdate(返回当前系统日期,不包含时间)
curtime(返回当前的时间,不包含日期)
datediff(求相差天数)
year,month(返回英文:monthname)以此类推(年,月,日,小时,分钟,秒)
str_to_date(将字符转换成指定格式的日期)
STR_TO_DATE(‘9-13-1999’,’%m-%d-%Y’) 1999-09-13
date_format(将日期转换为字符)
DATE_FOEMAT(‘2018/6/6’,’%Y年%m月%d日’) 2018年06月06日

四,其他函数
version(版本号)
database(查看当前数据库)
user(当前用户)
五,流程控制函数
1.if(if else 效果)
SELECT IF(10>5,‘大’,‘小’);
2.case
使用1:swith case 的效果
case 要判断的字段或表达式
when 常量1 then 要显示的值1或语句1;
when 常量2 then 要显示的值2或语句2;

else 要显示的值n或语句n;
end
例题:

使用二:类似于多重if
case
when 条件1 then 要显示的值1或语句1
when 条件2 then 要显示的值2或语句2

else 要显示的值n或语句n
end


2.分组函数;(用于统计)
分类:
sum,avg,max,min,count
1.简单使用
2.参数支持哪些类型
sum,avg适用于数值型
max,min,count只支持任何类型
3.以上分组函数忽略null值
4.可以和distinct搭配使用
select sum(distinct salary)from employees
5.count函数的详细介绍
(count()用于统计行数)
select count(1)from employees(统计1 的个数)
效率:
MYISAM存储引擎下,count(
)的效率最高
INNODB存储引擎下,count( *)和count(1)的效率差不多,比count(字段)要高
6.和分组函数一同查询的字段有限制:一般要求是group by后的字段


单行函数
1.字符函数
concat:链接
substr:截取子串
upper:变大写
lower:变小写
replace:替换
length;获取字节长度
trim:去前后空格
lpad:左填充
rpad:右填充
instr:获取子串第一次出现的索引
2.数字函数
ceil:向上取整
round:四舍五入
mod:取模
floor:向下取整
truncate:截断
rand:获取随机数,返回0-1之间的小数
3.日期函数:
now:返回当前日期+时间
year:返回年
date_format:将日期转换成字符
curdate:返回当前日期
str_to_date:将字符转换成日期
curtimr:返回当前时间
datediff:返回两个日期相差天数
monthname:以英文形式返回月
4.其他函数
version:当前数据库服务器的版本
datebase:返回当前数据库
user:当前用户
password(‘字符’):返回该字符的密码形式
md5(‘字符’):返回该字符的md5加密形式
5.流程控制函数
①if(条件表达式,表达式1,表达式2)
②case情况1
case 变量或表达式或字段
when 常量1 then 值1
when 常量2 then 值2

else 值n
end


分组函数
max;min;sum;avg;
count(字段):统计该字段非空置的个数
count(*):统计结果集的行数count(1)

## Myql的常见命令及语法规范相关推荐

  1. mysql数据库入门教程(2):常见命令大全,语法规范

    1常见命令 前提是先登录客户端 1查询 创建 删除 -数据库 查询数据库 SHOW DATABASES [LIKE '数据库名']: 不区分大小写 :代表要执行以上语句 语法说明: LIKE是可选项, ...

  2. 04-mysql常见命令,语法规范,

    P12012_MySQL基础_MySQL常见命令介绍 >显示所有数据库 test为测试数据库 >切换使用数据库 >查询另一个库中的所有表 >查看当前选中的数据库 >创建数 ...

  3. [GO语言基础] 二.编译运行、语法规范、注释转义及API标准库知识普及

    作为网络安全初学者,会遇到采用Go语言开发的恶意样本.因此从今天开始从零讲解Golang编程语言,一方面是督促自己不断前行且学习新知识:另一方面是分享与读者,希望大家一起进步.前文介绍了什么是GO语言 ...

  4. Linux常见命令作用(持续更新中,欢迎提议支持)

    Linux常见命令作用(持续更新中,欢迎提议支持) 1.ifconfig 查看ip地址 2.cd 切换工作目录(跳转路径) cd 路径 切换至工作目录"路径" 下同,指令后面都可附 ...

  5. MySQL常见命令及基本查询

    目录 MySql的启动和停止: MySql服务的登录和退出 登录: 退出: MySql的常见命令 1.查看当前所有的数据库 2.创建数据库 3.打开指定库 4.查看当前库的所有表 5.查看其它库的所有 ...

  6. Linux常用命令(本篇包括,Linux目录结构介绍、Linux Shell介绍、9个常见命令介绍、文件的概念、文件的操作(20个)、目录的操作、文件和目录的权限、文件压缩及解压缩)

    Linux常用命令(本篇包括,Linux目录结构介绍.Linux Shell介绍.9个常见命令介绍.文件的概念.文件的操作(20个).目录的操作.文件和目录的权限.文件压缩及解压缩)         ...

  7. linux常见命令以及shell入门编程(笔记总结记录)

    linux常见命令以及shell入门编程(笔记总结记录) 文章目录 linux常见命令以及shell入门编程(笔记总结记录) 一.linux常见命令 1.不常用 2.常用 3.数据查找处理相关 1.g ...

  8. 导学+初识MySQL+SQL语法规范+数据库相关操作+表相关操作+MySql存储引擎介绍+MySQL表的创建+测试数据类型

    一.导学 1.什么是SQL? 结构化查询语言,数据库管理系统通过SQL语言来管理数据库中的数据: 2.SQL语言组成部分 (1)DDL--数据定义语言,主要定义数据库.表.视图.索引和触发器等 (2) ...

  9. python注入_python的常见命令注入威胁

    ah!其实没有标题说的那么严重! 不过下面可是我们开发产品初期的一些血淋淋的案例,更多的安全威胁可以看看北北同学的<python hack>PPT,里面提及了不只命令执行的威胁,那些都是我 ...

  10. Memcache 安装和常见命令

    memcached常见命令 1.安装libevent  wget https://github.com/downloads/libevent/libevent/libevent-1.4.10-stab ...

最新文章

  1. 【转】python编码大坑详解2
  2. YOLOv3: 训练自己的数据(绝对经典版本1)
  3. 解决vc2008 utf8中文字符串报错 C2001常量中有换行符
  4. 5年,我从文员一路晋升到总监,薪资翻了5倍[转]
  5. NGUI中UILabel使用url标签的一个bug
  6. 你可能不知道的字符比较中的“秘密”
  7. php检索条件丢失,php – 从SQL Server检索时丢失的某些图像的一部分
  8. 【转载】KDiff3 Merge工具的使用 极简教程
  9. iPhone 5福音 网友发布Nano-SIM剪卡教程
  10. Oracle官网登录用户名密码
  11. 【我的新书】一步一步学SpringBoot 2:微服务项目实战
  12. python中count方法
  13. mysql2016安装和配置_SQL Server2016正式版安装配置方法图文教程
  14. 鸿蒙系统学习笔记(一) 鸿蒙系统介绍
  15. 【python】自动登录51cto家园
  16. Joda-Time 操作常用时间函数
  17. 性能测试:Loadrunner 脚本录制、设置事务、添加检查点、参数化以及添加关联
  18. vue-混入mixins
  19. 2020年第11届蓝桥杯省赛Python组(真题+解析+代码):数字三角形
  20. what-is-downasaur

热门文章

  1. 使用android新特性:Material Design
  2. 【吐槽】Android 第一步,雀氏纸尿裤
  3. centos7 安装拼音输入法
  4. 短视频 SDK 架构设计实践
  5. 浅析企业云服务之SaaS、PaaS、IaaS对比分析
  6. 二分法和黄金分割法的区别和联系,附Python代码
  7. html导出excel换行,ASP.NET 导出到Excel时保留换行的代码
  8. PUG转HTML格式
  9. 【转】一起做RGB-D SLAM (1)
  10. Kaggle-泰坦尼克号-机器学习/数据挖掘学习笔记