gpt4 book ai didi

php - zend 框架选择对象和复杂连接

转载 作者:行者123 更新时间:2023-11-29 08:58:24 25 4
gpt4 key购买 nike

我正在尝试学习使用 select 对象,它确实使用起来很舒服,至少对于不太复杂的查询来说是这样。使用这个代替手动 sql 查询有什么限制吗?

我更愿意在我的应用程序中的任何地方使用它,但真的不知道如何将它用于像这样的更复杂的查询:

SELECT yt.rowid, yt.concat, added_latest, yt.volume, (yt.risk*yt.volume)
FROM obsoletes.batches yt
INNER JOIN(
SELECT rowid, batch, concat, volume as latest_vol, MAX(added) AS added_latest
FROM obsoletes.batches
GROUP BY concat) ss
ON yt.added = ss.added_latest AND yt.batch = ss.batch
WHERE yt.concat = 'something'
GROUP BY yt.batch

这可能吗?如何?文档不是那么好。我也可以使用WHERE x IN ( ... ) 与选择对象?

提前致谢!

最佳答案

不确定,但类似这样:

$inner = $db->select ()
->from ('obsoletes.batches', array (
'rowid',
'batch',
'concat',
new Zend_Db_Expr ('volume AS latest_vol'),
new Zend_Db_Expr ('MAX(added) AS added_latest')
))
->group ('concat');


$query = $db->select ()
->from ('obsoletes.batches', array (
'rowid',
'concat',
'volume',
new Zend_Db_Expr ('risk*volume')
))
->joinInner ($inner, 'yt.added = added_latest AND yt.batch = ss.batch')
->where ('concat = ?', 'something')
->group ('batch');

关于php - zend 框架选择对象和复杂连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9300875/

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