[Typo3-german] exec_SELECTquery oder exec_SELECT_mm_query?

Peter Niederlag niederlag at ikd01.de
Wed Jul 13 12:26:43 CEST 2005


Nick Weisser schrieb:
> Hallo allerseits
> 
> Könnte mir bitte jemand mit folgendem SQL auf die Sprünge helfen:
> 
> "select c.title, v.chapter, v.verse, v.text from
> ".$this->tablePrefix."chapters c, ".$this->tablePrefix."verses v where
> v.uid = '$id' and v.chapter = c.chapter"
> 
> Ich bin mir nicht ganz sicher, ob das überhaupt mit exec_SELECTquery
> möglich ist oder ob ich dazu exec_SELECT_mm_query brauche?

Es geht imho auch mit exec_SELECTquery. Man braucht es imho sogar, wenn
ein join über mehr als zwei Tabellen geht. Schau mal in die Doku der
Methoden. Du kannst bspw auch mit alias arbeiten.

$from_table = "pages as level1, tx_verses_foo as v".

Es geht imho so ziemlich alles was mit sql geht. Bei MM kann es imho
teilweise auch sinnvoll sein die Felder voll zu referenzieren, damit man
beide uid-Parameter hat.

$select_fields="pages.uid as puid, tx_verses.uid as vuid";

exec_SELECT_mm_query kann sinnvoll sein, wenn die MM-relation dem
Standard-TYPO3-Schema entspricht und man keine "Sonderwünsche" hat

> 
> Für einen Lösungsvorschlag oder einen Denkanstoss in die richtige
> Richtung wäre ich sehr dankbar.

/**
 * Creates and executes a SELECT SQL-statement
 * Using this function specifically allow us to handle the LIMIT feature
independently of DB.
 * Usage count/core: 340
[snipp!!!!]
 */
	function
exec_SELECTquery($select_fields,$from_table,$where_clause,$groupBy='',$orderBy='',$limit='')

Das sind doch wohl ein paar Denkanstöße. ;)

Ausprobieren hilft!

letzter Tip: in class.t3lib_db.php var $debug=TRUE und Du bekommst
detaillierte Info's zu den queries, wenn sie einen mysql_error erzeugen.

Gruß,
Peter
-- 
Peter Niederlag
http://www.niekom.de * TYPO3 & EDV Dienstleistungen *
http://www.typo3partner.net * professional services network *



More information about the TYPO3-german mailing list