我正在做一些报告,并认为我需要使用临时表。我的代码执行 api 调用以获取当天与该系统交互的所有用户 cookie。
现在我有一个包含所有 cookie 和他们使用的浏览器类型的表,我可以遍历 api 提供的 cookie 数组,并为每个不同的浏览器执行 sql 查找和增量计数器,所以最后我可以报告不同浏览器完成的浏览器访问次数。
但是,您可以想象,如果有分配的 cookie(有),这可能需要很长时间。
据我所知,解决方案是制作一个传递给我的 cookie 的临时表并将其内连接到我的 cookie 数据表中,然后执行
select count(id),broswer ... group by browser
下面是我想要尝试和做的更多代码视图:
$json = file_get_content($apiURL);
$cookies = '';
foreach($json as $val){$cookies .= ','.$val['cookie']; }
$cookies = substr($cookies,1);
mysql_query('CREATE TEMPORARY TABLE passedcookies (
`cookie` varchar(200) NOT NULL,
PRIMARY KEY(cookie)
) values ($cookies);')
mysql_query('SELECT count(cd.id), cd.browser FROM cookiedata cd
INNER JOIN passedcookies pc
ON pc.cookie = cd.cookie
GROUP BY cd.browser;');
mysql_query('DESTROY TEMP TBL;');
我必须销毁临时表吗?什么时候销毁?如果 3 个用户运行报告,每个用户都会得到自己的临时表?
谢谢你的帮助