/ / ZF2 इनर जहां क्लोज रिजल्ट रिटर्न के साथ जुड़ता है - mysql, join, zend-Framework2, जहां

ZF2 इनर के साथ जुड़ें जहां क्लॉज खाली परिणाम देता है - mysql, join, zend-framework2, जहां

जब मैं भेजने में mysql क्वेरी का अनुसरण करने की कोशिश करता हूं तो मुझे बस एक खाली परिणाम सेट मिलता है (जो भरा जाना तय है)।

मैंने अपने mysql कार्यक्षेत्र में अनुसरण क्वेरी की कोशिश की (परिणाम वापस देता है)

SELECT `websites`.*, `s`.`website_id` AS `websites.id`
FROM `websites`
INNER JOIN `websites_statistics` AS `s` ON `s`.`website_id` = `websites`.`id`
WHERE `websites`.`website` = "google.com" LIMIT 0,1

और यह मेरे ZF2 आवेदन में एक (खाली परिणाम सेट)

$sql = new Sql($this->tableGateway->getAdapter());

$select = $sql->select();
$select->from("websites")
->join(array("s" => "websites_statistics"), "s.website_id = websites.id", array("websites.id" => "website_id"), ZendDbSqlSelect::JOIN_INNER)
->where(array("websites.website" => "google.com"));

$resultSet = $this->tableGateway->selectWith($select);

echo $select->getSqlString();

return $resultSet;

डिबग परिणाम:

SELECT "websites".*,
"s"."website_id" AS "websites.id"
FROM "websites"
INNER JOIN "websites_statistics" AS "s" ON "s"."website_id" = "websites"."id"
WHERE "websites"."website" = "google.com"

(अपडेट किया गया) क्वेरी थोड़ी है इसलिए यह अधिक आसान है। मुझे लगता है कि पहले क्षण में कुछ गलत हो जाता है क्योंकि मुझे लगता है कि "s" है। "website_id" AS "websites.id" को दूसरी दिशा में फ़्लिप करना है। website.id से रिकॉर्ड लेने के लिए website_id से वेबसाइटों_स्टैटिस्टिक्स तालिका।

अग्रिम में धन्यवाद!

छेद

उत्तर:

उत्तर № 1 के लिए 1

मुझे यह काम मिल गया। समस्या यह नहीं थी कि क्वेरी को स्व। मुझे पहली तालिका के मॉडल (एक्सचेंजअरे) में दूसरी तालिका (एक मैं शामिल होने) के क्षेत्रों को जोड़ना था! यही चाल चली। सभी को धन्यवाद।