Nasıl çabuk Zend_Db kullanarak karmaşık bir seçme sorgusu oluşturabilirim?

1 Cevap php

En gibi bir şey var diyelim:

SELECT energy_produced, energy_consumed, timestamp1 AS timestamp FROM (
SELECT max(energy_produced) AS energy_produced, mid(timestamp, 1, 10) AS timestamp1 FROM tbl_energy
WHERE site_id = 1366 AND mid(timestamp, 1, 10) >= DATE_SUB(curdate(),INTERVAL 1 day)
group by mid(timestamp1, 1, 10)) AS e1
INNER JOIN (
SELECT max(energy_consumed) AS energy_consumed, mid(timestamp, 1, 10) AS timestamp2 FROM tbl_energy
WHERE site_id = 1366 AND mid(timestamp, 1, 10) >= DATE_SUB(curdate(),INTERVAL 1 day)
group by mid(timestamp2, 1, 10)) AS e2
ON e1.timestamp1 = e2.timestamp2

Ben sadece bir değişkene malzeme ve ($ seçin) $ db-> fetchAll gibi enayi diyebilir miyim -> toArray?

1 Cevap

Evet, $db->fetchAll() yöntemine bir dize olarak bir SQL deyimi iletebilirsiniz.

Sen sonuç zaten varsayılan bir dizi olarak döndürülür, çünkü sonuç toArray() aramak gerekmez.

Zend_Db_Table sınıfı ayrıca bir fetchAll() yöntemi vardır, ama bu bir SQL dizesi almaz ve bir Zend_Db_Table_Rowset nesnesi döndürür.