对于一个网站,我要建设我需要检查是否有位置了合同,这些地点可能有合同的直接链接到他们或者当存在的一个更大的组织还有合同联系的组织。

我试图用一个DQL查询,第一次检查,如果有合同的直接链接,然后如果有任何链接通过organistion与该查询:

    $q = self::createQuery("l")
        ->select('sl.sc_id, sl.type, so.sc_id, so.type, l.naam, l.loc_id, l.straat, l.telefoon, l.plaats, l.postcode, l.huisnummer, l.huisnummer_achtervoegsel, o.naam')
        ->from('Locatie l, l.Organisatie o, l.Sc sl, o.Sc so')
        ->orderBy('o.naam, l.naam')
        ->execute();

这不是我想要在这么多,因为其返回阵列的所有数据我需要:

array(13) { 
["loc_id"]=> string(2) "93" ["org_id"]=> string(1) "9" ["naam"]=> string(12) "test" 
["Organisatie"]=> array(4) { ["org_id"]=> string(1) "9" ["naam"]=> string(3) "test"
["Sc"]=> array(1) { [0]=> array(6) { ["sc_id"]=> string(1) "1" ["sc_nummer"]=> NULL ["type"]=> string(6) "All-in" } } } 
["Sc"]=> array(0) { } 

}

问题是重复["Sc"]关键,因为在php当一系列具有重复的钥匙,最后一关键改写第(什么,我读过无论如何),这使得它不可能使检查,如:

if(!empty($SC) or !empty($SC2) {}

我似乎无法找出如何使原则的名字的关键之一是不同的或者甚至合并的两个。

我试图使用 INDEXBY 但是,变化的关键内['SC']阵列和未['SC']本身。

任何想法?

有帮助吗?

解决方案

你可以重新命名它在查询。所以在你的例子,这只会改变的 sc_id 对喜欢的东西

[...] sl.sc_id AS your_new_key [...]

看看 http://www.doctrine-project.org/projects/orm/1.2/docs/manual/dql-doctrine-query-language/en#select-queries:aggregate-values

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top