摘要:如何删除重复数据, 只保留一条 drop table if exists temp_dm_patientinfo_id; create table temp_dm_patientinfo_id as select record_id, -- 重复键 max(id) max_id from dm_pa
阅读全文
随笔分类 - MySQL
摘要:如何删除重复数据, 只保留一条 drop table if exists temp_dm_patientinfo_id; create table temp_dm_patientinfo_id as select record_id, -- 重复键 max(id) max_id from dm_pa
阅读全文
摘要:1. show create procedure 2. 两个系统表 information_schema.routines 可查询出存储过程的内容,但是入参和出参没包含 information_schema.PARAMETERS 可查询入参和出参 select concat(p1,ifnull(p2
阅读全文
摘要:上面的报错,是在MySQL里执行动态拼接SQL后报错的。 -- 先定义两段SQL set @update_sql_fm=concat('update ads_gcl3e_patient_',@base_group_short_name,'_detail1 t1 join temp_gcl3e_rec
阅读全文
摘要:参数排序方法,只能作用于临时表,不能作用于join的结果。不然报错!!! 正确用法如下: set @p = null; set @r = 0; select record_id,doctor_name,doctor_guid, rank,create_date from ( SELECT s.*,
阅读全文
摘要:1. 查询Mysql的进程 -- 查看全部进程 show processlist; -- 查询进行中的进程 select *from information_schema.processlist where command not in('Sleep','Killed'); -- 查询某个库的进程
阅读全文
摘要:使用delete删除的时候,mysql并没有把数据文件删除,而是将数据文件的标识位删除,没有整理文件,因此不会彻底释放空间。 可以使用 OPTIMIZE TABLE 是指对表进行优化。 这个命令可以将表中的空间碎片进行合并,并且可以消除由于删除或者更新造成的空间浪费 。 OPTIMIZE TABLE
阅读全文
摘要:1. like '%keyword%' 的方式不会走索引,全表扫描 select *from table where column like '%keyword%'; 2. regexp 都不会走索引 3. like 'keyword%' 的方式会走索引,但要求查询的关键词都在开头 select *
阅读全文
摘要:在网上搜到的一种算法是利用自增长变量进行排序,然后再根据位置序号取。感觉有些复杂了。 一. group_concat来的省事些, 缺点是 group_concat默认有总长度限制,不能对太多的数求中位数。可以修改长度限制,也可以用第二种方法 1. 按顺序聚合,逗号分隔,并计数 group_conca
阅读全文
摘要:原因和解决方案参考: https://blog.csdn.net/xuexiiphone/article/details/103426404 随手记录: 问题: 通过insert into select的方式,将查询结果导入到新的表中,会产生如下错误 1292 - Truncated incorre
阅读全文
摘要:学习自 https://blog.csdn.net/qq_36761831/article/details/82862135 1. like 与 regexp比较 like有的功能,regexp都有;regexp还能进行更精确的匹配 -- 模糊匹配两者完全等价 SELECT * FROM rp_da
阅读全文
摘要:参考 https://www.cnblogs.com/Aiapple/p/5791479.html 1. mysqldump mysql官方自带的命令行工具 逻辑备份,热备 单线程,适合数据量小的库 2. 具体命令使用 #备份或者叫导出 # #所有库(导库的时候没有存储或者函数) 1)mysqldu
阅读全文
摘要:1. mysql --help -h : ip/host -u : 用户名 -p : 密码 -P : 端口 -D : 指定库 -e : 指定sql语句 -t : 查询结果按表格展示 -c, --comments : Preserve comments. Send comments to the se
阅读全文
摘要:#查询是否锁表 show OPEN TABLES where In_use > 0; #查看所有进程 show processlist #kill kill 288607; #查看正在锁的事务 SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;
阅读全文
摘要:set @name='张三'; select @name, char_length(@name), case when char_length(@name)=1 then ELT( INTERVAL( CONV(HEX(CONVERT(substr(@name,1,1) USING GBK)),16,10), 0xB...
阅读全文
摘要:1. 表名一定要区分大小写,不一致就会报错 2. 无隐式的类型转换 (比如对某数值进行排序时,原表字段存储却是varchar型,就会对该数值按字符串排序而非数值大小!) 3. group by 也能查询出非group by的字段,但是会改变记录数,随机取一条! 慎用非聚合字段 4. 嵌套查询里的or
阅读全文
摘要:1. 字符串转换成int cast(str_a as signed) int 转换成字符串 concat(c4,'') 2.字符串转换成小数 convert(str_a, decimal(15,1)) 3.中位数计算方法: select "中位数" name, max(case when ID=((
阅读全文
摘要:1. Sqoop import 任务里把原来NULL的转化成字符串‘null’了。 解决方法: 先: alter table ${table_name} SET SERDEPROPERTIES('serialization.null.format' = '\\N'); 再: sqoop代码最后面加上
阅读全文
摘要:1. Mysql 把本地文件导入表中 默认txt为中文编码,在导入时转化为utf-8编码,就会避免乱码。
阅读全文
摘要:今天遇到了个小问题: 如何在分区表之间复制部分分区数据?
阅读全文
摘要:1. 拿关键字做列名 查询字段等时需要加 ``(1上面那个)包裹起来。不然会报解析字符串错误。 2. 在指定位置添加字段 删除字段: 3. bit或binary或tinyint字段转化成 int 4.
阅读全文
|