php - 非常慢的 SQL 连接

标签 php mysql phpmyadmin

我有 2 个巨大的 mysql 表:

  • userdetails:id, name, address, country
  • 用户数据:id、productname、producturl、price

我想从 userdata 创建一个 excel 表,其中 id 是 userdetails 中用户的 id,其中国家/地区是西类牙,因此我们有:

id, name, address, country, productname, producturl....

简单的加入会有帮助吗?我试过但挂起我的系统,因为我在用户数据中有 500 万条记录,在用户详细信息中有 20,000 条记录。

我可以在 phpMyadmin 中执行此操作吗?还是用php更好?最好使用的优化脚本是什么?

SELECT column_name(s)
FROM table_name1
INNER JOIN table_name2
ON table_name1.column_name=table_name2.column_name

最佳答案

will a simple join help?

是的。

I tried but hangs my system as i have 5million records in userdata and 20,000 records in userdetails.

500 万条记录并不算多。如果您正确地连接了表,并且有正确的索引,这个查询应该会在很短的时间内执行。

can I do this in phpMyadmin?

您绝对可以在那里执行查询。根据a comment通过 Bojan Kovacevic ,您甚至可以将结果保存为 CSV 文件,以便稍后可以在 Excel 中打开它,至少在最新版本中是这样。

or with php be better?

仅当您需要通过 HTTP 返回结果时。

what is the best optimised script to use?

您可以使用命令行 mysql 客户端和 SELECT … INTO OUTFILE … MySQL command将结果保存为 CSV 文件,然后您可以在 Excel 中打开。

关于php - 非常慢的 SQL 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15066874/

相关文章:

php - 将数据库中的所有数据输出到 php 页面

php - Codeigniter 模型未插入值

mysql - SQL 中 NULL 的大小写

mysql - sql使用union和orderby查询一张表

php - 表 1 中的数据不会移动到表 2

php - IBM Watson 关系提取 "Forwarding error"(status_code 500)

php - 需要一个循环发送功能的想法

php - 创建/修改字段命名约定?

php - mysql sleep 进程

mysql - 在 MySQL phpMyAdmin 中合并两个 WordPress 帖子/评论表