备忘:ddl脚本(更改表结构,不需要commit)/ dml脚本是sql增删改 需要commit
一、dml:
【查select】
1、查询是否锁表
show open tables where in_use>0;
2、查询进程
show processlist
查询到相对应的进程,然后 kill 1353;
3、查看正在锁的事务
select * from information_schema.innodb_locks;
4、查看等待锁的事务
select * from information_schema.innodb_lock_waits;
5.模糊查询
SELECT * FROM 表名 t where t.CREATE_TIME LIKE '2019-01-18 %';
6.计算指定字段的总数(未去重)
SELECT COUNT(字段名) AS 命名 FROM 表名
7.统计总数
SELECT count(*) from 表名 where 条件;
8.计算整个表的总条数
SELECT COUNT(*) FROM 表名;
9..查表结构
describe coscp.t_tag_base_info;
【删DELETE】
1.删除一个表字段下的数据
DELETE from 表名 WHERE 条件;
COMMIT;
2.删除一个表的2个字段下的数据
DELETE from 表名 WHERE TAG_ID IN (10000,10032);
COMMIT;
3.查询和删除此表该列值为空的行
DELETE from 表名 WHERE PARENT_ID IS NULL
4.查询和删除此表该列值不为空的行
SELECT * from 表名 WHERE PARENT_ID IS NOT NULL
5.清空表数据
delete from 表名;
COMMIT;
【改】
1.更新表中某个字段下单元格的值
update 表名 set 字段名 = "值" where 条件
【增insert】
1.在指定的列插入数据
insert into 表名 (列名1,列名3) values ("值1","值2")
插入新的行数据
INSERT INTO 表名称 VALUES ('值1', '值2',....)
二、ddl:
1.删除表字段
alter table 表名 drop column 字段名
2.删除表
drop table 表名
3.复制一张表
create table 库名.命名表名 copy select * from 要复制的库名.表名;
【授权】
grant select,insert,update,delete on 库名.表名 to 用户名;
grant select on 库名.* to 用户名;
【取消授权】
revoke all on 库名.* from 用户名;
revoke insert on 库名.* from 用户名;
【清空表】
truncate table 库名.表名;