我有 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/