[英]using sql union on same table in cakephp find query
假設我有這樣的查詢:
(SELECT * FROM user WHERE id < 5 order by id DESC LIMIT 1)
UNION
(SELECT * FROM user WHERE id = 5)
UNION
(SELECT * FROM user WHERE id > 5 LIMIT 1)
如何將上述查詢轉換為CakePHP find('all')查詢?
謝謝
將其重寫為find('all')將是有問題的,但是find('neighbors')
可能符合您的要求;
這應該可以為您提供所需的數據,但是您可能必須稍微采用一些代碼,才能使其與返回數組的不同“布局”一起正常工作;
$data = $this->User->find('neighbors', array('field' => 'id', 'value' => 5));
更新
剛剛看到您使用的是CakePHP 1.3,上面發布的鏈接指向文檔的2.x部分。 盡管類似,但這是CakePHP 1.3的文檔:
http://book.cakephp.org/1.3/en/The-Manual/Developing-with-CakePHP/Models.html#find-neighbors
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.