MySQL基本语句写法

-- 查看数据库中表的字段属性
SELECT COLUMN_NAME 列名, COLUMN_COMMENT 名称, COLUMN_TYPE 数据类型, IF(COLUMN_KEY='PRI', "主键", "非主键") 主键, 
IF(IS_NULLABLE='NO', "可空", "非空") 是否为空, "" 二级注释 , COLUMN_DEFAULT 默认值, TABLE_SCHEMA 数据库名称, 
DATA_TYPE 字段类型, CHARACTER_MAXIMUM_LENGTH 长度 FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_NAME = 'TableName' AND TABLE_SCHEMA = 'DatabaseName'

--删除数据
DELETE A FROM SYS_USER_ROLE A WHERE NOT EXISTS (SELECT 1 FROM SYS_USER B WHERE A.USER_ID = B.ID)

--删除数据 同表删除报错
DELETE FROM JIANGSU_AB01 WHERE AAB004 IN (SELECT * FROM (SELECT B.AAB004 FROM JIANGSU_AB01 B GROUP BY B.AAB004 HAVING COUNT(1) > 1) B) 

-- 设置GROUP_CONCAT()函数拼接长度
SET SESSION GROUP_CONCAT_MAX_LEN = 1024;

-- 表字段一列多行转成一个字符串
SELECT GROUP_CONCAT(CONCAT(' AS "', UPPER(COLUMN_NAME), '"') SEPARATOR ', ') COL2ROW FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_NAME = 'TableName' AND TABLE_SCHEMA = 'DatabaseName';

-- 去除空格
UPDATE JIANGSU_AB01 SET AAB031 = TRIM(REPLACE(REPLACE(REPLACE(REPLACE(AAB031, CHAR(10), ''), CHAR(13), ''), '-', ''), ' ', ''));

SHOW VARIABLES LIKE 'event_scheduler'; 
SELECT * FROM MYSQL.EVENT;
SHOW VARIABLES LIKE '%TIME%'; 
SET GLOBAL EVENT_SCHEDULER = ON;
SET TIME_ZONE = '+8:00';
SET SYSTEM_TIME_ZONE = '+8:00';

打开数据库FEDERATED功能 建立类似ORACLE的DBLINK的表 ( CREATE TABLE TABLE_NAME(......) ENGINE = FEDERATED CONNECTION='mysql://[username]:[password]@[location]:[port]/[db-name]/[table-name] 待测试)

-- 重复数据设置成1
UPDATE TableName SET COLUMNNAME ='1' WHERE COLUMNNAME IN (SELECT COLUMNNAME FROM (SELECT COLUMNNAME , COUNT(1) FROM TableName GROUP BY COLUMNNAME HAVING COUNT(1) > 1) A)

原文地址:https://www.cnblogs.com/Dream-Lasting/p/8991062.html