数据库查询及随机更新的那些事情

原创 2015年07月10日 11:53:10

最近几天实验室一直需要我来造数据,在开始的过程中遇到了些问题,但是最终都还是顺利的解决了,感觉挺容易的,下面说下我在这个过程中遇到的问题及方法。

1、每条船有一个ID即MMSI,但是每一条船在一个月内的数据有多条,数据库中2014.11月有4亿条数据,几十万艘船,现需要随机抽取1000多条船在某一经纬度范围内的数据,由于是随机的,所以用mysql里的Limited可以作为随机限定,语句如下:

SELECT * FROM table WHERE MMSI IN(SELECT MMSI FROM L0_Clean_AIS_Dynamic_Temp WHERE Latitude>=-12000000&&Latitude<=12000000&&Record_Datetime>1417363200&&Record_Datetime<1420041600)LIMIT 3365482

当然这是我之前做过测试的,知道大约300万数据里有1000多条船,其实这句话稍微合理的做法应该和下面第2条语句类似。


2、现在需要从这选择出来的1000条船中,再选择出100多条船的数据,querylimited即为1000多条船的表,当然这个语句和以上的类似的,但是写法有变,得到了126船:

SELECT  *  FROM querylimited  WHERE MMSI  NOT IN (SELECT MMSI FROM (SELECT  DISTINCT MMSI FROM querylimited  LIMIT 126)as t)


由于在where 限定语句后面不能直接使用LIMIT,所以需要在后面加上 as it 即将中间的查询结果,单独作为一个表t


3、

SELECT  *  FROM query126  WHERE MMSI  NOT IN (SELECT MMSI FROM (SELECT  DISTINCT MMSI FROM query126  LIMIT 38)as t)

4、

SELECT  *  FROM query126  WHERE MMSI   IN (SELECT MMSI FROM (SELECT  DISTINCT MMSI FROM query126  LIMIT 38)as t)

5、

UPDATE query88 SET latitude= latitude+RAND()*120000 AND lontitude=lontitude+RAND()*120000

这句话,写错了,用and,并不能直接更新想要的数据库,而是将纬度那一列值赋为0了,如果想同时更新两列,需要用逗号,而不是and,这句话应改为:

UPDATE query88 SET latitude= latitude+RAND()*120000 ,lontitude=lontitude+RAND()*120000



                
版权声明:本文为博主原创文章,未经博主允许不得转载。

Mysql 的随机更新

随机数字: update you_table set you_c = round(rand()*10000000000%2000000000) uuid: update you_table se...
  • hzw2312
  • hzw2312
  • 2016年07月20日 14:56
  • 1104

图的随机生成以及欧拉(回)路的判断

输入m个结点,n条边,随机生成图,并判断是否是欧拉图或半欧拉图。 #include #include #include #include #include #define MAX 1000 ...
  • cute_young
  • cute_young
  • 2015年12月16日 14:14
  • 1131

JSP实现生成随机验证码

代码直接拷贝就能用
  • qq_32384313
  • qq_32384313
  • 2017年10月08日 15:20
  • 96

那些事情

最近一段时间有些迷茫脑子比较乱,看到这篇文章有些感触就转了,也希望分享给更多的朋友:生活、工作中会遇到很多事情,迷茫惆怅的情绪偶尔有之也无妨,这也是你成长必须要经历的,些许的停顿给自己一个深入思考的空...
  • czc1009
  • czc1009
  • 2015年02月04日 11:55
  • 301

数据库查询经验总结,不定期更新

场景: A-----主表 B-----从表 C-----从表 B,C两表的主键都是A表的外建。 现在要查数据,直接查A表,查到的是B和C表的ID,如何找到对应的B表C表数据呢? 使用left jon ...
  • shenbushen
  • shenbushen
  • 2016年09月06日 16:03
  • 300

数据库分页查询技术以及实现查询随机数

数据库分页和随机查询
  • high2011
  • high2011
  • 2015年09月15日 21:05
  • 963

SQLServer数据库查询,更新一例

SQLServer数据库查询,更新一例6)数据库查询方面:  表:T1  id         tName  1          Jack  2          Tom  3          J...
  • hsg77
  • hsg77
  • 2011年06月10日 18:27
  • 620

JDBC 数据库查询 更新

步骤: 1. 注册驱动程序并建立链接。 2. 执行语句并保存在结果集当中。 3. 资源回收。...
  • cFarmerReally
  • cFarmerReally
  • 2016年10月15日 13:37
  • 364

模拟n步一维随机游走的情况。

package randomWalk; import java.util.Random; import java.util.Scanner; public class RandomWalk { ...
  • u013805796
  • u013805796
  • 2014年03月21日 13:01
  • 821

基于随机游走的personalrank算法实现推荐

今天我们讲一个下怎么使用随机游走算法PersonalRank实现基于图的推荐。 在推荐系统中,用户行为数据可以表示成图的形式,具体来说是二部图。用户的行为数据集由一个个(u,i)二元组组成,表示...
  • qingqingpiaoguo
  • qingqingpiaoguo
  • 2017年03月08日 21:03
  • 873
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:数据库查询及随机更新的那些事情
举报原因:
原因补充:

(最多只允许输入30个字)