随笔分类 - mysql
摘要:每种数据库在实现多表更新和子查询优化方面的支持各不相同。以下是 Oracle、MySQL 和 PostgreSQL 中多表更新的一些主要差异和惯用写法: 1. Oracle MERGE 语句:Oracle 支持 MERGE INTO ... USING ... ON ... 语法,非常适合多表更新和
阅读全文
摘要:-- 插入文件INSERT INTO test(b)VALUES (LOAD_FILE('D:/text.xlsx')); -- 导出文件到服务器SELECT b INTO DUMPFILE 'D:/test001.xlsx'FROM test where id=8; -- 导出文本类型到客户机(二
阅读全文
摘要:设置全局 set global collation_connection = utf8mb4_general_ci set global default_collation_for_utf8mb4 = utf8mb4_general_ci 注: default_collation_for_utf8m
阅读全文
摘要:1.查询正在运行的线程 SHOW PROCESSLIST; #或 select * from information_schema.PROCESSLIST; 2.批量生成杀线程的命令 select concat("kill ", ID, ";") as command from informatio
阅读全文
摘要:1.mysql查询表的所有字段 select COLUMN_NAME,column_comment from INFORMATION_SCHEMA.Columns where table_name='表名' and table_schema='数据库名'; 2.mysql拼接所有字段,方便写sql
阅读全文
摘要:第一个函数是计算平面坐标系下,两点的距离,就是 如果用于计算地球两点的距离,带入的参数是角度(经纬度),则计算的单位也是相差的角度,用此角度计算距离不准。纬度距离约111km每度,经度距离在赤道平面上是111km每度,随纬度的升高逐渐降低为0。 第二个函数是计算球面距离的公式,传入的参数是经纬度(经
阅读全文
摘要:随机查询,方法可以有很多种。比如,查询出所有记录,然后随机从列表中取n条记录。使用程序便可实现。可是程序实现必须查询出所有符合条件的记录(至少是所有符合条件的记录id),然后再随机取出n个id,查询数据库。但是效率毕竟没有数据库中直接查询得快。下面介绍mysql中怎样随机查询n条记录。 1.最简单的
阅读全文
摘要:示例 WHILE s <> 1 DO select xxx; insert into xxx; END WHILE; 执行耗时27秒 优化点1: 添加事物 START TRANSACTION; #开启事物 WHILE s <> 1 DO select xxx; insert into xxx; EN
阅读全文
摘要:例如查询昨日新注册用户,写法有如下两种: register_time字段是datetime类型,转换为日期再匹配,需要查询出所有行进行过滤。而第二种写法,可以利用在register_time字段上建立索引,查询极快! 附上日期转换函数
阅读全文
摘要:MySql in子句 效率低下优化背景:更新一张表中的某些记录值,更新条件来自另一张含有200多万记录的表,效率极其低下,耗时高达几分钟。update clear_res set candelete=0 where resid in( select distinct resourceid from ...
阅读全文