gpt4 book ai didi

php - 如何在 CakePHP 中编写带有子查询的 Select

转载 作者:行者123 更新时间:2023-11-29 01:57:41 25 4
gpt4 key购买 nike

我有以下查询:

$queryResult = $this->Hit->query(
"select P, count(S) as S
from
(
select pattern_id as P, srn as S from hits
where job_id=".$id." and srn != ''
group by srn, pattern_id
order by pattern_id, srn
) as T
group by P
order by P;"
);

基本上我有一个 select .. from (select .. ) ... 语句。当我使用 MySQL 时,它工作得很好。但是我必须将数据库迁移到 PostgreSQL,所以我想将其更改为 Cake-way。所以我的问题是,如何在 CakePHP 中解释这种类型的查询(select from select)?

提前致谢。

最佳答案

我不确定您在 CakePHP 中解释此查询是什么意思,因为您的代码是有效的 CakePHP。

话虽如此,我会将您的查询重写为:

SELECT pattern_id as P, COUNT(DISTINCT srn) as S
FROM hits
WHERE job_id=".$id." and srn != ''
GROUP BY pattern_id
ORDER BY pattern_id;

(我相信这是等效的 - 您可以使用示例数据加载 sqlfiddle.com 以进行更好的测试)

如果这样做有效并且您有一个 Hits 模型,那么您可以使用 find 方法重写查询。

关于php - 如何在 CakePHP 中编写带有子查询的 Select,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23824902/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com