---
title: "datenbankabfrage mit mehreren mm relationen"
url: "https://www.typo3.net/d/85330-datenbankabfrage-mit-mehreren-mm-relationen"
source: "typo3.net"
tags: ["Extensions","Entwicklung","Datenbank","Frage"]
created: "2008-12-27"
last_reply: "2009-01-05"
replies: 1
solved: false
page: 1
pages: 1
lang: "de"
---

# datenbankabfrage mit mehreren mm relationen

Extensions › Entwicklung · 1 Antwort · gestartet 2008-12-27

## Eröffnungsbeitrag

**npre** · 2008-12-27 · [Beitrag #1](https://www.typo3.net/d/85330-datenbankabfrage-mit-mehreren-mm-relationen/1)

hallo,

ich habe ein projekt, wo die dateneingabe über mehrere true mm datenbankrelationen erfolgt. nun muss ich eine abfrage erstellen und steh ziemlich auf den schlauch. in der tabelle1 werden alle daten eingegeben, dort kann man z. b. mehrere kategorien (mm) und mehrere länder (mm) zuweisen. nun möchte ich alle einträge in der tabelle1 abfragen, die die kategorie-id z. b. 2 und die länder-id 4 haben.

hab mal versuchsweise ein konstrukt mit exec_SELECT_mm_query gebaut, funktioniert aber nur mit 1 mm datenbank:

```php
$resListeLaender=$GLOBALS['TYPO3_DB']->exec_SELECT_mm_query(
			'tx_myext_touren.*, tx_myext_land.land' ,
			'tx_myext_touren',
			'tx_myext_touren_laender_mm',
			'tx_myext_land',
			' AND tx_myext_touren.deleted = 0 AND tx_myext_touren.hidden = 0 AND tx_myext_touren_laender_mm.uid_foreign='.$gewaehltesLand.'',
			'', # groupBy
			'', # orderBy
			$limit=$this->piVars['pointer']*3 . ',3'  #limit
			);
```

mit 2 kommt leider nix:

```php
$resListeLaender=$GLOBALS['TYPO3_DB']->exec_SELECT_mm_query(
			'tx_myext_touren.*, tx_myext_land.land, tx_myext_kategorie.kategorie' ,
			'tx_myext_touren',
			'tx_myext_touren_laender_mm AND tx_myext_touren_kategorie_mm',
			'tx_myext_land AND tx_myext_kategorie',
			' AND tx_myext_touren.deleted = 0 AND tx_myext_touren.hidden = 0  AND tx_myext_touren_kategorie_mm.uid_foreign = 3 AND tx_myext_touren_laender_mm.uid_foreign='.$gewaehltesLand.'',
'', # groupBy
			'', # orderBy
			$limit=$this->piVars['pointer']*3 . ',3'  #limit
			);
```

hat jemand eine idee, wie das funktionieren könnte?

## Antworten

### [#2](https://www.typo3.net/d/85330-datenbankabfrage-mit-mehreren-mm-relationen/2) · npre · 2009-01-05

nachdem ich keine lösung gefunden habe, habe ich die mm aufgelöst und das ganze mit der komma-liste gemacht:

```php
#Laender ermitteln
		if($record['laender']) {
			$LaenderArray = explode(",", $record['laender']);
			foreach($LaenderArray as $ausgabeLaender)
				{	
					$queryLaender = ('SELECT tx_myext_land.land, tx_myext_land.uid
					FROM tx_myext_land  
					WHERE tx_myext_land.uid = '.$ausgabeLaender.''
					);     
					$resLaender = $GLOBALS['TYPO3_DB']->sql_query($queryLaender);
					$rowLaender = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($resLaender);
					//Beistrich und Leerschritt hinter jedem Ergebnis setzen
					$sVarLaender .= $rowLaender['land'].", ";
					
			}
			$markerArray['###LAENDER###'] = substr($sVarLaender, 0, -2);
```

---

Quelle: „datenbankabfrage mit mehreren mm relationen“, typo3.net, https://www.typo3.net/d/85330-datenbankabfrage-mit-mehreren-mm-relationen
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
