每个用户从数据库里查询数据后,再次查询不会查询到上次提取的数据。
目前采用的方案是 用户查询后,并把查询的记录插入到另外一个表并做标识
下次查询的时候 用left jion 方式筛选。
多个用户之前可以重复,单个用户不重复查询数据目前的结构如下:
data表
dataid,content,data
logs表
id,dataid,uid查询语句:SELECT data.* FROM data
LEFT JOIN logs ON (data.dataid = logs.dataid AND logs.uid='1')
WHERE logs.id IS NULL and data.data='2016-06-06' desc LIMIT 100;
这样查询到不重复的数据后再把所有的dataid和uid插入到logs表这样的情况发现少量数据没问题,数据量一旦多了,超级慢和卡,有没有其他的方案或者办法呢?
目前采用的方案是 用户查询后,并把查询的记录插入到另外一个表并做标识
下次查询的时候 用left jion 方式筛选。
多个用户之前可以重复,单个用户不重复查询数据目前的结构如下:
data表
dataid,content,data
logs表
id,dataid,uid查询语句:SELECT data.* FROM data
LEFT JOIN logs ON (data.dataid = logs.dataid AND logs.uid='1')
WHERE logs.id IS NULL and data.data='2016-06-06' desc LIMIT 100;
这样查询到不重复的数据后再把所有的dataid和uid插入到logs表这样的情况发现少量数据没问题,数据量一旦多了,超级慢和卡,有没有其他的方案或者办法呢?
解决方案 »
- 查一个uid在每一天出现的次数,即请教mysql语句两次分组怎么写
- mysql-nt.exe应用程序错误,该内存不能为“read”。
- insert 的时候奇怪的问题!
- mysql, find_in_set 查询速度相当慢 ,in()又数据不全?有没有更合适的办法
- 自动计算并插入值的问题
- 2003下的mysql服务老是停止
- 求教:Postgresql中有类似SQLServer的datediff函数吗?
- MySql数据库登陆的奇怪问题(200分相送,谢谢指点)
- 求mysql的字符串替换
- phpmyadmin数据库A里面有B和C两个独立的数据库,怎么创建的?
- mysql中这种表怎么建立??
- mysql5.6主从复制问题
你的表里有用户id吗,最好是能有用户id,也就是说,你的log里有用户id,因为你说你是想让每个用户查询出不同的数据,所以对于每个用户来说,如果能够在sql中放入用户id,那么过滤出来的log就会相对比较少,速度也能快一点
有ID,也存放了,假设1个用户每次查询100条,100次就查询1000条,1000个用户就是10万条,就算有ID,left join 也是很慢啊。
有ID,也存放了,假设1个用户每次查询100条,100次就查询1000条,1000个用户就是10万条,就算有ID,left join 也是很慢啊。data表里有id吗