已掉线,重新登录

首页 > 绿虎论坛 > 历史版块 > 编程 > 数据库

标题: 今天在执行一个sql子查询时提示不支持limit什么什么的

作者: @Ta

时间: 2022-09-05

点击: 1150

This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'

看到网上是这样解决的

select from table where id in (select id from table limit 10)
但是,只要你再来一层就行。。如:
select
from table where id in (select t.id from (select * from table limit 10)as t)

有没有老铁知道为什么会这样
之前使用sqlite在windows上跑的很好,一点毛病没有
转到linux后,六七个人同时访问网站,出现了严重的延迟问题,不知道为什么读写性能很差, 然而数据库并不大,索引也都有
于是今天就转到mysql,遇到了这个问题

另外还有一个问题,mysql字段默认值无法自定义为当前时间戳么,查了一下好像不支持,于是都转为datetime了


[隐藏样式|查看源码]


『回复列表(3|显示机器人聊天)』

1.

@echo醉老仙,你是php嘛?profile看看哪里速度慢?

(网上随便找的图)

(/@Ta/2022-09-06 14:50//)

2.

@无名啊,用的thinkphp,最多的时候有七八个人访问,每个人最高频次2-3秒进行一次读写,每次update一条数据,之后会返回带条件的count,读写也不能说很频繁吧,但也不至于会导致返回数据延迟呀,毕竟才几M数据,在windows上的时候挺正常的,看日志好像没啥大毛病,已经转为mysql了,日志已经清理,并且考虑到网上说的InnoDB引擎count比MyISAM慢,于是采用MyISAM

(/@Ta/2022-09-06 15:13//)

3.

@echo醉老仙,几MB。。我还是觉得 SQLite 绰绰有余

况且 SQLite 也有 WAL 模式(先顺序写入xxx.db.wal,有空了再写回xxx.db,写速度提高很多

MyISAM,你不需要事务啥的嘛

(/@Ta/2022-09-06 15:36//)

回复需要登录

7月2日 03:30 星期三

本站由hu60wap6驱动

备案号: 京ICP备18041936号-1