繁体   English   中英

如何在Python的sqlite3中搜索整个数据库?

[英]How can I search an entire database in Python's sqlite3?

sqlite3的新手...我已经使用sqlite3在python中构建了一个数据库。 该数据库有数百个表。 例如,样本表列出了人的平均年龄与经度和纬度的关系。 我可以使用什么命令在整个数据库(所有表)中搜索“平均年龄”值,其中lat> 15,lon <30? 样本表如下:

表格1:

_Avg. age_|__Latitude__|__Longitude__
     15   |    19.86   |     21.5
     21   |    19.86   |     21.5
     75   |    19.86   |     21.5
     16   |    19.86   |     21.5
     .    |      .     |       . 
     .    |      .     |       . 
     .    |      .     |       . 

表2:

_Avg. age_|__Latitude__|__Longitude__
     75   |   -22.65   |     53.5
     65   |   -22.65   |     53.5
     12   |   -22.65   |     53.5
     31   |   -22.65   |     53.5
     16   |    19.86   |     53.5
     .    |      .     |       . 
     .    |      .     |       . 
     .    |      .     |       . 

您需要遍历所有表并从每个表中进行选择

for table in db.execute("SELECT name FROM my_db.sqlite_master WHERE type='table'").fetchall():
    print db.execute("SELECT * FROM %s WHERE lat > 15  and lon < 30"%table).fetchall()

我猜

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM