一、相关命令
show databases; -----------查看当前mysql有哪些数据库
use 库名; -----------使用/进入某一个库
show tables; -----------查看当前库下的所有表
create database 库名;---------创建一个数据库
create table 表名(列名 类型,列名 类型);------创建一个表
desc 表名; ----------------查询表结构
insert into 表名 values(数值1,数值2);-----添加数据数据
insert into 表名(字段名1,字段名2) values(数值1,数值2)---添加数据(指定字段)
insert into 表名 values(数值1,数值2),(数值3,数值4);
select * from 表名;----------------查询表里的数据
select 字段1,字段2 from 表名;-----查询表中指定字段的数据
delete from 表名 where 姓名='赵六'; -----------------删除某一条数据(要加条件)
update 表名 set 字段=新值 where 字段=值;-------更改数据(要加条件)
where 条件表达式
update a set 姓名='赵六' where 年龄='20';
update a set 姓名='李四' where 年龄=20 or 年龄=30;
ERROR
drop table 表名;------------------删除表结构
drop database 库名;-------------删除库
二、where过滤条件:
where 字段=值;
双重条件?
and:并且
文章插图
or :或者
where 字段1=值 and 字段2=值;
where 字段1=值 or 字段2=值;
=是 !=不是
判断条件:= > < >= <= != <>
用在查询,删除,更新操作
三、MySQL的函数:
字符串(文字):
concat(字符串1,字符串2,字符串3):字符串拼接
length(字符串):返回字符串的长度(空格也占用一个字符长度)
upper(字符串):将字符串全部大写
lower(字符串):将字符串全部小写
substring(字符串,开始位置,截取的长度):截取指定位置的字符串
trim(字符串):去除字符串两边的空格
ltrim(字符串):去除字符串左边的空格
rtrim(字符串):去除字符串右边的空格
replace(字符串,被替换的原字符串,替换成对应文字):字符串替换
strcmp(字符串1,字符串2):比较两个字符串的大小(按文字编码比较)
中文>英文>数字>符号
mysql> select strcmp('1','1');
+-----------------+
| strcmp('1','1') |
+-----------------+
| 0 |
+-----------------+
1 row in set (0.00 sec)
数值:
ceil(小数):向上取整
floor(小数):向下取整
mod(数值1,数值2):对数值1和数值2进行取余运算
rand():生成0-1之间的随机数
round(数值,保留几位小数):对数值按照保留指定小数位进行四舍五入
时间:
now():获取当前时间年月日时分秒
curdate():获取当前时间中的年月日
curtime():获取当前时间中的时分秒
year(now()):获取当前年
month(指定时间):获取当前月
day(指定时间):获取当前日
hour(指定时间):获取当前时
minute(指定时间):获取当前分钟
second(指定时间):获取当前秒
week(指定时间):获取现在是当前年的第几周
weekday(指定时间):获取今天是周几
其他函数:
-聚合函数
对结果集进一步处理:求和,求平均,统计数量,最大值,最小值
sum(字段名):求当前列所有数据的和
avg(字段名): 求当前列所有数据的平均值
count(字段名): 求当前列所有数据的数量
max(字段名):求当前列所有数据中的最大值
min(字段名):求当前列所有数据中的最小值
四、数据库排序
语法:
order by 列名 desc/asc;
desc:降序
asc: 升序
默认就是升序可以不写asc
比如:
对emp表中的员工信息按照工资升序排序?
select * from emp order by sal asc;
select * from emp order by sal;
对emp表中的员工信息按照工资降序排序?
select * from emp order by sal desc;
对奖金列进行排序(该列有空值和非空的数值)?
select * from emp order by comm;-------空值最小,然后再依次比较数值的大小
五、数据表的备份
是创建表和查询表语句的结合
语法:
create table 新表名 as select * from 原表名;
复制emp表,新表名为emp_copy
复制dept表,新表名为dept_copy
查看mydb里所有表
六、分组查询
语法:
group by 分组的字段 having 过滤条件
规则:
1)有几行相同规则的字段才能分组
秒懂生活扩展阅读
- mysql数据库内存缓存设置 mysql 查询缓存
- cadrec命令怎么用
- 如何修改天正电气快捷键命令
- 一定要知道的MySQL命令 explain
- cad标注命令
- 批处理中的或命令是什么
- dos下如何命令从硬盘启动
- UG中移除参数命令有什么用
- 电脑开机启动项怎么设置 启动项命令
- 如何理解“教育不是长辈的断然命令和晚辈的恭顺服从”?