Am 01.02.2013 00:31, schrieb Ralf-Rene Schröder:
Hallo...
irgendwie sehe ich den Wald vor lauter Bäumen nicht...
ich muß da irgendeinen blöden logischen Fehler machen.
ich habe datensätze (item) die per MM Tabelle mehreren Kategorien (cat)
zugeordnet sind
(die wiederum sind untereinander duch eine Kommaseparierte Liste
verbunden - vereinfacht hier nur als register, denn die stimmen)...
nun will ich hier die Datensätze zählen die sowohl cat als auch
parentcat zugeordnet sind...
jedes der beiden Elemente (100/110) zählt für sich richtig
bei parentcat alleine gibt es 4 - bei cat alleine 12 Ergebnisse
(schon richtig, weil diese cat auch in anderen parents eingebunden sind)
beides zusammen sollten bei meinen testfall 3 ergeben (sind aber hier 0)
item-count.cObject = TEXT
item-count.cObject.numRows.table = tx_ext_item
item-count.cObject.numRows.select {
join = tx_ext_item_cat_mm ON ( tx_ext_item_cat_mm.uid_local =
tx_ext_item.uid )
pidInList = 688
andWhere.cObject = COA
andWhere.cObject {
100 = TEXT
100.value = tx_ext_item_cat_mm.uid_foreign = {register:cat}
100.insertData = 1
100.noTrimWrap = |||
110 = TEXT
110.value = tx_ext_item_cat_mm.uid_foreign = {register:parentcat}
110.insertData = 1
110.noTrimWrap = | AND ||
}
}
jemand eine Idee wo mein Denkfehler ist ???
bau dir doch mal ein SQL-Query als Beispiel auf und schmeiss das ins
phpmyadmin.
bzw. lass dir mal hier dein Query ausgeben. irgendwo sollte da drin dann
so etwas wie
tx_ext_item_cat_mm.uid_foreign = 1 AND // cat
tx_ext_item_cat_mm.uid_foreign = 2 // parentcat
stehen. Das kann natürlich nie erfüllt werden, da ein Feld nicht
gleichzeitig zwei verschiedene Werte annehmen kann.
eigentlich musst du ein mit deiner mm-tabell ein join auf sich selber
machen. damit so etwas geht musst du mit alias arbeiten
SELECT uid,count(*)
FROM tx_ext_item_cat_mm
JOIN tx_ext_item_cat_mm AS mm2 ON tx_ext_item_cat_mm.uid = mm2.uid
WHERE tx_ext_item_cat_mm.uid_foreign = 'cat'
AND mm2.uid_foreign = 'parentcat'
ob du dann noch die Ursprungstabelle joinst um direkt weitere Felder
(titel, ...) zu bekommen steht dir frei.
bernd
--
http://www.pi-phi.de/cheatsheet.html
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german