一、常用sql
show variables like 'character_set_client';#查询字符集
show databases;#列出所有的服务器上的数据库alter
create database if not exists test;#创建一个数据库
drop database fk;#删除数据库
show tables from test;#显示一个数据库中的表
use test;
create table tb_dept(
Id int primary key auto_increment,#部门编号 整形 主键 自增长
Name varchar(18),#部门名称
description varchar(100)#描述
);
show tables from test;
desc tb_dept;#查看表信息
show create table tb_dept;
use test;
#员工表
create table tb_emp(
id int primary key auto_increment,#auto_increment只是MySQL特有的
Name varchar(18),
sex varchar(2),
age int,
address varchar(200),
email varchar(100)
);
drop table tb_dept;
#修改列类型
#注意:不是任何情况下都可以去修改的,
#只有当字段只包含空值时才可以修改。
alter table tb_emp modify sex varchar(4);
#增加列
alter table tb_emp add tel varchar(12);
#删除列
alter table tb_emp drop tel;
alter table tb_emp drop column tel;
#列改名
alter table tb_emp change Name emp_Name varchar(18);
#更改表名
alter table tb_emp rename emp;
rename table emp to tb_emp;
#插入|删除|更新
insert into dept_emp (Name,sex,age,address,email)values('','','','','');
delete from tb_info where tmp_name = 'zxm';
update tb_info set tmp_name = 'zrr' where id = 13;
MySql运行在safe-updates模式下,该模式会导致非主键条件下无法执行update或者delete命令,执行命令SET SQL_SAFE_UPDATES = 0;修改下数据库模式
二、mysql中top
若在mysql中实现select top功能得用:select * from tablename limit M,N
这里M表示从(M+1)条记录开始,N表示返回的记录条数
select * from info order by no desc limit 0,5;
三、MySQL5.7中新增的JSON类型
1、原生的JSON优势如下:
(1) 存储上类似text,可以存非常大的数据。
(2)JSON有效性检查:插入的数据必须是JSON类型的字符串才行。
(3) 相比于传统形式,不需要遍历所有字符串才能找到数据。
(4) 支持索引:通过虚拟列的功能可以对JSON中部分的数据进行索引。
(5)JSON使得查询性能提升
2、 对于某一列是json而言,需要使用内置的函数 json_extract(列名,'$.key') 这个函数有2个参数,第一个参数是json列的列名,第二个参数$.key 其中key为json字符串中某一个key。
SELECT uid,json_extract(info,'$.mail') AS 'mail',json_extract(info,'$.name') AS 'name' FROM USER