一条SQL 最多能查询出来多少条记录?

等等,昨天我在调试报表系统时遇到了一些奇怪的情况。
用户想要查看过去三个月的销售数据,但系统突然卡住,日志中充满了“max_allowed_pa​​cket”错误。
检查了一段时间,发现某客户填写的评论信息太长,有一条记录超出了MySQL默认的6 4 MB限制。
这让我想起上次配置数据库时,技术负责人特意将max_allowed_pa​​cket设置为1 2 8 MB,就是为了避免这种意外。
不过话说回来,我们的生产数据库表中最大的记录是一个大约1 2 0MB的TEXT类型字段,仍然使用utf8 mb4 字符集。
测试期间缓存几乎崩溃。

在access文件中的SQL视图中输入什么语句是查询 “学生”表中所有姓王的记录。

说白了,要在Access SQL视图中定位姓王的人,只需要在学生表中写“select from school”,名字是“王%”,是不是很简单?
我们先来说说最重要的事情。
'王%'是使用通配符时的标准:'%'代表任意长度的任意字符,因此'王%'直接匹配所有以“王”开头的名字。
去年我们做教务系统项目时,有的学生坚持用“王__”(下划线)。
结果3 000级数据卡在查询引擎里,用“%”秒出结果。

还有一点:select是一种懒惰的写法。
所有字段都需要直接暴露出来,但随后你发现出了问题。
如果表中字段较多,使用Select来限制姓名、年龄等字段名称,这样效率更高,也可以避免误操作。
还有另一个关键细节。
Access对SQL不区分大小写,但引号中必须包含英文单引号,如“王%”,中文引号会直接被压缩。

一开始我以为“王%”就可以全部找到了,后来发现搜索“王小明”和“大王”都找不到,只好用“王%”。
等等,还有一件事。
如果“name”列有空值,这个SQL会自动过滤它。
不要猜为什么,Access 被设置为 null 并且不等于任何内容。

建议多练习类似的边界条件。
例如,如果“国王”位于中心,则使用“%%王%%”。
很多人不重视这一点。