news 2026/4/23 17:07:39

mysql 最快查询代码

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
mysql 最快查询代码
# 异步 from concurrent.futures import ThreadPoolExecutor import asyncio all_tables=["select * from hdrx.bas_source", "select * from hdrx.bas_station", "select * from hdrx.bas_unit","select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his",] if 1: import asyncio import time import pandas as pd from sqlalchemy.ext.asyncio import create_async_engine from sqlalchemy.sql import text # 待执行的 SQL 列表 all_sql = [ "select * from hdrx.bas_source", "select * from hdrx.bas_station", "select * from hdrx.bas_unit", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", ]*5 # 数据库配置 DB_CONFIG = { "user": "root", "password": "root", "host": "127.0.0.1", "port": 3306, "database": "hdrx" } #====================最快速查询sql的方法. semaphore=asyncio.Semaphore(5) # 加上信号量,可以保证并发不蹦. async def runsql_async(ttt): async with semaphore: """真异步 SQL 查询函数""" # 创建异步引擎(基于 asyncmy 驱动) async_engine = create_async_engine( f"mysql+asyncmy://{DB_CONFIG['user']}:{DB_CONFIG['password']}@{DB_CONFIG['host']}:{DB_CONFIG['port']}/{DB_CONFIG['database']}", echo=False # 关闭 SQL 日志输出 ) async with async_engine.connect() as conn: # 执行 SQL 查询 result = await conn.execute(text(ttt)) # 获取查询结果并转为 DataFrame df = pd.DataFrame(result.fetchall(), columns=result.keys()) # 关闭异步引擎 await async_engine.dispose() return df async def mini_async(): """异步任务调度函数""" tasks = [runsql_async(table) for table in all_sql] results = await asyncio.gather(*tasks, return_exceptions=True) return results # 测试真异步版本速度 if __name__ == "__main__": kaishi = time.time() a = asyncio.run(mini_async()) # print(a) print("真异步(asyncmy)的速度", time.time() - kaishi) # 信号量100时候: 35秒 # 信号量10时候:33秒 # 信号量20时候:35秒
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 12:11:38

5分钟学会:用Ollama Python开发AI聊天应用的3大核心技巧

5分钟学会:用Ollama Python开发AI聊天应用的3大核心技巧 【免费下载链接】ollama-python 项目地址: https://gitcode.com/GitHub_Trending/ol/ollama-python 还在为AI应用开发的高门槛发愁?想快速构建自己的智能对话系统却不知从何入手&#xff…

作者头像 李华
网站建设 2026/4/23 13:43:52

精通Windows Forms部署:从开发到分发的完整指南

精通Windows Forms部署:从开发到分发的完整指南 【免费下载链接】winforms Windows Forms is a .NET UI framework for building Windows desktop applications. 项目地址: https://gitcode.com/gh_mirrors/wi/winforms Windows Forms作为.NET平台下构建Wind…

作者头像 李华
网站建设 2026/4/23 10:44:52

5分钟搞定环境!YOLOv12官版镜像让部署不再痛苦

5分钟搞定环境!YOLOv12官版镜像让部署不再痛苦 你是否还在为部署目标检测模型耗费数小时?下载依赖、配置环境、调试版本冲突……这些繁琐的步骤不仅拖慢开发进度,还容易在团队协作中引发“在我机器上能跑”的尴尬。现在,这一切都…

作者头像 李华
网站建设 2026/4/15 21:14:48

Z-Image-Turbo浏览器兼容问题?Chrome/Firefox访问教程

Z-Image-Turbo浏览器兼容问题?Chrome/Firefox访问教程 1. 为什么Z-Image-Turbo推荐使用Chrome或Firefox? 你是不是也遇到过这种情况:好不容易把Z-Image-Turbo部署好了,模型加载成功,服务也启动了,结果在浏…

作者头像 李华
网站建设 2026/4/23 10:47:58

RustDesk虚拟显示实战指南:5步解决无显示器远程控制难题

RustDesk虚拟显示实战指南:5步解决无显示器远程控制难题 【免费下载链接】rustdesk 一个开源的远程桌面,是TeamViewer的替代选择。 项目地址: https://gitcode.com/GitHub_Trending/ru/rustdesk 在企业IT运维和开发环境中,你是否经常面…

作者头像 李华
网站建设 2026/4/23 12:12:12

Windows Terminal 终极配置与使用指南

Windows Terminal 终极配置与使用指南 【免费下载链接】terminal The new Windows Terminal and the original Windows console host, all in the same place! 项目地址: https://gitcode.com/GitHub_Trending/term/terminal Windows Terminal 作为微软推出的现代化终端…

作者头像 李华