查询北京仓书籍
select * from bookstore where warehouse='beijing'
查询北京仓计算机分类书籍
select * from bookstore where warehouse='beijing' and category='cs'
查询北京仓计算机分类下数据库书籍
select * from bookstore where warehouse='beijing' and category='cs' and subcategory = "database"
假设查询慢,要 2 秒。
如何加速查询?
假如在上面的基础上再加条件?
有什么思路吗,临时表?
同时还要获取数量,具体的语句太多就不一一列举
select count(*) from bookstore
在计数这块,我用的方法是只查询
select * from bookstore where warehouse='beijing'
损失一点前面的速度,但是后面的查询可以通过 python 的元组遍历来获得
for i in all:
if i[5]==cs:
cs_sum += 1 #遍历 pytho 元组,获得 cs 数量
if i[7]==database:
database_sum += 1 #在 cs 基础上获取 database 量
实测 5k 的数据遍历耗时远远小于一次 sql 查询。
根本原因在于我前面写的 sql 查询不能利用上一次查询获取的数据,有优雅的方案吗?