(是的,我已经“彻底搜查的答案问我的问题之前,” ......但还没有找到“正确”的答案,我的问题。我已经阅读了MySQL的人有关用户变量...我已经阅读了PHP男人关于PDO ......还是不能神交的解决方案。)
我想从PHP代码,以获得从正确和成功执行中phpMyAdmin的这个SQL语句返回相同的结果集:
SET @x := 0;
SELECT *
FROM (
SELECT
`o`.`timestamp`
`o`.`v_phase_a` ,
`o`.`v_phase_b` ,
`o`.`v_phase_c` ,
(@x := @x+1) AS x
FROM `operational_parameters` AS o
WHERE `o`.`timestamp` >= '2014-01-21 05:00:00'
AND `o`.`timestamp` <= '2014-02-04 04:59:30'
ORDER BY `o`.`timestamp`
) t
WHERE x MOD 336 = 0;
对结果集的类型的理由是一个漫长的故事,并扎根于我的客户的业务需求。 它应该表示存储为行的数据的插入的隔开30秒在给定时间跨度的均匀采样,在这种情况下2周...这个特定语句返回恰好120行的数据,然后将其通过PHP打包并将其发送到的UI与jqplot插件来绘制...
其他一切工作的很好很好,只是在PHP中我无法执行多个SQL语句,这个过程我相信会被要求设置我的用户变量@x,在随后的SELECT语句中使用。 同样,当使用phpMyAdmin对我的数据库中查询这个SQL运行就好了... ...
我不知道,一般来说,在PHP中,一个不能在单个查询中执行多个SQL语句...
它是可能的,但是,创建一个SQL语句-作为一个字符串-将获取相同的结果集,使用phpMyAdmin的工具,我上面列出的SQL由MySQL返回? 单个语句,我可以传递给我的新创建的PDO我的PHP内获得行权数量?
(好像PDO的都应该能够处理这种情况下,至少这就是我从我的这个板子的研究收集...)
我有点新的PHP / MySQL的,所以我准备学习。 教了!