sql 简单查询修改

1.group by order by
select  siteid count(*)as 1  from webdb where gathtrime between ‘2017-06-14 00:00:00‘ and ‘2017-06-14 23:59:59‘ group by siteid order by 1desc
2 in limit
 select * from sitemanage where  url in (select url from curl) limit 0,1000
3 时间
select* from sitemanage where siteid=12 and gathertime>‘2017-06-12 00:00:00‘ order by gathertime desc
4 update sitemanage set updatestrategy=3 where id in (select siteid from webde where newurl!=‘(null)‘ order by siteid ASC)
5update sitemanage set =replace(url,‘‘,‘‘)
6.SELECT id, url, configs FROM sitemanage WHERE (INSTR(configs, ‘div.title>‘)>0)
SELECT id, url, configs FROM sitemanage WHERE (INSTR(configs, ‘<filterreg>‘)=0)
7.SELECT * FROM sitemanage  WHERE (INSTR(configs, ‘h1‘)>0) ORDER BY url ASC  LIMIT 2000,3283
8 update sitemanage set sitemanage.vname = (select vname from contrast  where sitemanage.id=contrast.id)
url中含有中文汉字
9SELECT url FROM sitemanage WHERE length(url )!=char_length(url)
10
SELECT id FROM siteid2 WHERE id NOT in (SELECT id FROM metasearchconf_id WHERE id BETWEEN 94366 AND 97000) AND (id BETWEEN 94366 AND 97000) LIMIT 31
11
 update sitemanage  set updatestrategy=2, configs= replace (configs,‘<titlefilter><![CDATA[td.title]]></titlefilter>‘,‘<titlefilter><![CDATA[table.title>tr>td[align=center]]]></titlefilter>‘) WHERE url LIKE  ‘http://www.ln.gov.cn%‘
#SELECT * from sitemanage where id in (SELECT id from contrast)
#update sitemanage set updatestrategy=3 where id in (SELECT id from contrast)
#select count(id) from sitemanage WHERE updatestrategy=3 and (id in (SELECT id from contrast))查询部分:1、等值连接(from a,b)>外连接(from a left join b)>子查询。2、依照小结果驱集驱动大结果集的原则写where条件的顺序。3、不使用not in ,可用 not exists代替。4、尽量减少对字符串、时间类型字段用>、<,可用between and代替。    条件列中不可使用函数 例如:Year(publishtime)>2016。5、多表查询中数据量大时,用关联代替  in,不要使用or 连接。6、养成用explain 检测语句效率7、多表查询最好的优化方式是建视图,提高表的逻辑独立性,还可以屏蔽原有表结构变化带来的影响。

索引部分:1、一个查询只能用到一个索引,也就是where条件与索引配合使用的必要性。2、选择建立单列索引还是复合索引,复合索引同样是依照从左到右的顺序,而且一定要将使用频率最高的字段放在左边。若第一个没有与条件匹配到,则其他字段的索引不会被使用。3、关联查询时,条件两边字段类型相同并且都建有索引才会提速。4、建过索引的字段默认值不要为null5、Like  ‘%XXX%’是不会用到索引的,但like ‘xxxx%’会被用到。6、尽量不要对大文本或长字符串建索引,可以建前缀索引。7、经常有删除操作的表、或有大量长文本的表要定期进行碎片整理。用MyISAM引擎为例,我们对表做删除操作时,data中的*.MYD文件的大小是不会变小,会影响我们的存储与查询。所以要定期做清理(OPTIMIZE TABLE  `***`可多个表‘,’连接)8\\表中时间段查询语句SELECT COUNT(url) FROM  wise_web_docinfo  WHERE  gathertime BETWEEN ‘2016-05-30 00:00:00‘ AND ‘2016-05-30 23:00:00‘9\\url 模糊查询SELECT * FROM  sitemanage WHERE url LIKE ‘%0634%‘10\\根据url字段,更改表中的其他字段UPDATE sitemanage SET category=‘论坛D‘ ,updatestrategy=2 WHERE url LIKE ‘%0634%‘11\\in条件,limit条件查询SELECT * FROM webdb  WHERE url  in(select url from curl ) LIMIT 0,100012\\时间查询SELECT?*?FROM?wise_web_docinfo?WHERE??site_id?=-7651?AND?gathertime?>‘2016-07-12?00:00:00‘?ORDER?BY?gathertime?DESC13\\inSELECT * FROM sitemanage WHERE id IN (SELECT siteid FROM waitlist WHERE newurl != ‘(NULL)‘ ORDER BY siteid ASC) 14UPDATE   sitemanage SET updatestrategy=3  WHERE id IN (SELECT siteid FROM waitlist WHERE newurl != ‘(NULL)‘ ORDER BY siteid ASC)15SELECT * FROM `thai_com` ORDER BY gathertime LIMIT 0, 10;16update `baidutieba`  set  url= replace (url,‘http://tieba.baidu.com//f?kw‘,‘http://tieba.baidu.com/f?kw‘)
 

原文地址:https://www.cnblogs.com/zhanglin123/p/8337197.html

时间: 2024-11-09 09:34:54

sql 简单查询修改的相关文章

sql 简单查询,限定查询及排序

SQL(structured Query Language  结构化查询语言)是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统. SQL语言包含4个部分: ※数据定义语言(DDL),例如:CREATE.DROP.ALTER等语句. ※数据操作语言(DML),例如:INSERT.UPDATE.DELETE语句. ※数据查询语言(DQL),例如:SELECT语句. ※数据控制语言(DCL),例如:GRANT.REVOKE.COMMIT.ROLLBACK等语句. 简单查询

010.简单查询、分组统计查询、多表连接查询(sql实例)

-------------------------------------day3------------ --添加多行数据:------INSERT [INTO] 表名 [(列的列表)] --SELECT UNION --SELECT 'HAHA',1,32--UNION ALL --全部显示/显示重复数据 即使集合相同--UNION---------将查询的两个结果集合并.结构必须一致 -->常见面试题 --SELECT 'HEHE',2,33------将查询结果添加到列表中(子查询)IN

SQL CRUD 简单查询

identity 自增长 primary key 主键 unique 唯一键 not null 非空 references 外键(引用) 1.删除表 drop table Student 2.修改表 alter table RenYuan add CC int alter table RenYuan drop column CC 3.删除数据库 drop database CeShi CRUD操作 insert添加数据 read 读取数据 update 修改数据 delete 删除数据 1.添加

sql server简单查询

一.插入多行数据: 1.insert into ... select   从一个表中取出数据插入另一个已存在的表 2.select into   从一个表中取出数据插入一个新表中 3.insert into ()   union   select 常量列表 二.简单查询  1. 查询所有行和列 SELECT  *  FROM 表名  2.查询部分列 SELECT  列列表   FROM 表名  3.查询部分行  SELECT  列列表   FROM 表名 WHERE 列 运算符 值  4.列加别

yii2.0数据库查询修改等方法

yii2.0学习有一段时间了,给大家分享一下一些简单的查询等如何操作. 查询:(这里最前面的Test是引用的模型名) Test::find()->all();    此方法返回所有数据: 这些查询出来是对象形式,但是一般转换成数组格式: Test::find()->asArray()->all();     加上asArray()就取得数组形式的数据了,下面的自行添加. Test::findOne($id);   此方法返回 主键 id=1  的一条数据(举个例子): 条件查询:wher

[转]一个用户SQL慢查询分析,原因及优化

来源:http://blog.rds.aliyun.com/2014/05/23/%E4%B8%80%E4%B8%AA%E7%94%A8%E6%88%B7sql%E6%85%A2%E6%9F%A5%E8%AF%A2%E5%88%86%E6%9E%90%EF%BC%8C%E5%8E%9F%E5%9B%A0%E5%8F%8A%E4%BC%98%E5%8C%96/ 问题描述 一个用户反映先线一个SQL语句执行时间慢得无法接受.SQL语句看上去很简单(本文描述中修改了表名和字段名):SELECT cou

使用sql语句创建修改SQL Server标识列(即自动增长列)

一.标识列的定义以及特点SQL Server中的标识列又称标识符列,习惯上又叫自增列.该种列具有以下三种特点:1.列的数据类型为不带小数的数值类型2.在进行插入(Insert)操作时,该列的值是由系统按一定规律生成,不允许空值3.列值不重复,具有标识表中每一行的作用,每个表只能有一个标识列.由于以上特点,使得标识列在数据库的设计中得到广泛的使用.二.标识列的组成创建一个标识列,通常要指定三个内容:1.类型(type)在SQL Server 2000中,标识列类型必须是数值类型,如下:decima

LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据 (转)

http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了,但是我接触的比较晚,本着绝知此事要躬行的态度,决定写这个系列. 本文使用的测试环境是VS 2010,和sql server 2005数据库. 1.  从CUD开始,如何使用LINQ  to SQL插入.修改.删除数据 2.  查询 使用LINQ to SQL做简单查询 3.  查询 延迟加载与立即

MySQL 抓取SQL慢查询语句

当MySQL服务器出现异常(慢),首先要考虑是否因,SQL语句引起数据库慢,如果情况比较紧急,我们就要立刻 SHOW FULL PROCESSLIST; 去查看,但我建议大家使用-e参数,采用非交互的方式,因为这样可以使用grep等命令,对结果进行过滤,更方便直观的看到结果 一.抓SQL慢查询语句的方法,有2种: 1,临时紧急抓取 通过SHOW FULL PROCESSLIST; 的方式,执行几次,有相同语句,就可能是SQL慢查询语句: SHOW FULL PROCESSLIST; #查看MyS