【转】数据处理常用的sql语句整理
一下语句都是基于 mysql数据库
查询是否使用索引
explain select * FROM t_table1;
结果列的含义:
table:此次查询操作是关联哪张数据表
type:连接查询操作类型,一般根据索引查询的话为const,如果没有索引,则遍历所有数据那么为All(此种方式效率极低)
possible_keys:显示可能应用在这张表中的索引。如果为空,没有可能的索引。
key: 实际使用的索引。如果为NULL,则没有使用索引。
key_len:使用的索引的长度。在不损失精确性的情况下,长度越短越好
ref:显示索引的哪一列被使用了,如果可能的话,是一个常数
rows:返回请求的数据的行数
新建t_table1 复制 t_table2 的表结构和数据
CREATE TABLE t_table1 SELECT * FROM t_table2 ;
t_table2 数据复制到 t_table1
INSERT INTO t_table1 SELECT * FROM t_table2 ;
多表关联删除
DELETE t1 FROM t_table1 t1 LEFT JOIN t_table2 t2 ON t1.id=t2.id WHERE t2.id IS NULL;
多表关联更新数据
UPDATE t_table1 t2 LEFT JOIN t_table2 t1 ON t2.name= t1.name set t2.avatar = t1.avatar ;
截取 substring_index(字段, 截取的符号,1(截取符号之前的)/-1(截取符号之后的))
SELECT substring_index(time, '.',1) from t_table1
根据多列查重复数据
SELECT * FROM t_table1 a group by name,avatar HAVING count(1) > 1 ;
查找带中文字符的数据 length 不等于 char_length时说明含有中文
SELECT * FROM t_table1 WHERE length(name)!=char_length(name);
删除重复数据
DELETE FROM t_table1 WHERE id in (SELECT id FROM (
SELECT id FROM t_table1 a
WHERE ((SELECT COUNT(*) FROM t_table1 WHERE id = a.id) > 1) and id not in (
select min(id) from t_table1 group by id having count(*)>1
) ORDER BY id DESC ) as temp
);
获取字符长度 LENGTH
SELECT LENGTH(name) from t_table1 where LENGTH(name)>50 ;
替换字符 replace(字段,要替换的字符,替换字符)
update t_table1 set name = replace(name,'/','+') where name LIKE '%/%';
截取字符 SUBSTRING(字段,从第几个字符开始截取,截取多少位)
SELECT SUBSTRING(avatar,3,LENGTH(avatar)) from t_table1 LIMIT 1;
添加唯一键
ALTER TABLE t_table1 ADD CONSTRAINT UN_t_table1_phoneNumber UNIQUE (phone_number);
原文:https://blog.csdn.net/qq_27292113/article/details/80008573
【转】数据处理常用的sql语句整理的更多相关文章
- Oracle数据库常用的Sql语句整理
Oracle数据库常用的Sql语句整理 查看当前用户的缺省表空间 : select username,default_tablespace from user_users; 2.查看用户下所有的表 : ...
- MySQL的一些常用的SQL语句整理
安装MySQL有两种的方式,一种是解压版本,但是需要配置环境变量,相对而言比较麻烦.所以我们一般采取第二种方式,那就是到MySQL的官网上下载安装版.这样就会省去很多麻烦,在这里我就不再详细的介绍具体 ...
- 常用的一些SQL语句整理,也许有你想要的。
本篇文章是对一些常用的sql语句进行了总结与分析,需要的朋友参考下,也许会有你需要的. 1.SQL行列转换 问题:假设有张学生成绩表(tb)如下:姓名 课程 分数张三 语文 74张三 数学 83张三 ...
- 常用sql语句整理:mysql
## 常用sql语句整理:mysql1. 增- 增加一张表```CREATE TABLE `table_name`( ... )ENGINE=InnoDB DEFAULT CHARSET=utf8 ...
- 工作中常用的sql语句以及知识整理
一.常用的sql语句 1.建表语句 create table tabname(colname1 type1 [not null][primary key], colname2 type2,...) 根 ...
- 常用经典SQL语句大全完整版--详解+实例 《来自网络,很全没整理,寄存与此》
常用经典SQL语句大全完整版--详解+实例 下列语句部分是Mssql语句,不可以在access中使用. SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML ...
- MySQL 常用的sql语句小结(待续)
mysql 常用的sql语句 1.查看数据库各个表中的记录数 USE information_schema; SELECT table_name,table_rows FROM tables WHER ...
- 经典SQL语句大全以及50个常用的sql语句
经典SQL语句大全 一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql serv ...
- SQL Server中常用的SQL语句(转):
SQL Server中常用的SQL语句 转自:http://www.cnblogs.com/rainman/archive/2013/05/04/3060428.html 1.概述 名词 笛卡尔积.主 ...
随机推荐
- 嵌套For循环性能优化案例
转自:http://cgs1999.iteye.com/blog/1596671 涨知识~~~ 1 案例描述 某日,在JavaEye上看到一道面试题,题目是这样的:请对以下的代码进行优化 for (i ...
- 4 Values whose Sum is 0 [POJ2785] [折半搜索]
题意 给你长度为n四个数列,每个数列选一个数使总和为4,有多少种选法(不同选法仅当起码有一个元素的下标不同) 输入 第一行,n 下面n行,每行四个数,代表ai,bi,ci,di 输出 选法数量 样例输 ...
- c++模板文件,方便调试与运行时间的观察
#define _CRT_SECURE_NO_WARNINGS#include<iostream>#include <vector>#include<algorithm& ...
- js以键值对的方式获取URL的参数
在前端日常的开发中,大多数时候我们只需用js获取到url中的参数即可,这个实现起来也很方便如: function getQueryString(value) { const reg = new Reg ...
- C++调用C语言的库函数
在项目中,使用C语言编写了一个socket后台程序tkcofferd,并且为方便客户端的使用,提供了动态库,其中包含socket接口. 现在的需求是使用qt做一个前端界面,用来展示tkcofferd的 ...
- amazeui表单form异步提交方法
// 留言提交 $(function() { var $form = $('#ue-form'); $form.validator({ validateOnSubmit: true, submit: ...
- java学习(四)--- String 、StringBuffer、StringBuilder 和 数组
对于 String.StringBuffer.StringBuilder比较一下 主要说说三者的不同 String 长度大小不可变 StringBuffer 和 StringBuilder 长度可变 ...
- c#中string的一些基本用法
.string的Split方法的使用 这个例子就是通过制定的符号来将词组分开,Splite(分割的字符,分割的份数) using System; using System.Collections; p ...
- bitmap 合并图片
把两张bitmap覆盖合成为一张图 /** * 把两个位图覆盖合成为一个位图,以底层位图的长宽为基准 * @param backBitmap 在底部的位图 * @param frontBitmap 盖 ...
- input 在 2 和 3 上的区别
2 和 3 上面 在 input 的区别 1 2 3 name = raw_input('请输入用户名:')#python2.7的用法 name = input('请输入用户名:')#python3 ...