Heim  >  Artikel  >  PHP-Framework  >  Gängige Methoden zur gemeinsamen Abfrage mehrerer Tabellen in ThinkPHP

Gängige Methoden zur gemeinsamen Abfrage mehrerer Tabellen in ThinkPHP

藏色散人
藏色散人nach vorne
2021-04-23 16:20:235518Durchsuche

Die folgende Tutorial-Kolumne von thinkphp stellt Ihnen die gängigen Methoden der gemeinsamen Abfrage mehrerer Tabellen in ThinkPHP vor. Ich hoffe, dass sie Freunden in Not hilfreich sein wird!

Assoziative Abfragen (d. h. gemeinsame Abfragen mit mehreren Tabellen) in ThinkPHP können die table()-Methode oder die Join-Methode verwenden. Die spezifische Verwendung ist wie im folgenden Beispiel dargestellt:

1. Natives Abfragebeispiel:

$Model = new Model();
$sql = 'select a.id,a.title,b.content from think_test1 as a, think_test2 as b where a.id=b.id '.$map.' order by a.id '.$sort.' limit '.$p->firstRow.','.$p->listRows;
$voList = $Model->query($sql);

2. Beispiel für die Methode „join()“:

$user = new Model('user');
$list = $user->join('RIGHT JOIN user_profile ON user_stats.id = user_profile.typeid' );

Thinkphp-Methode zur Verwendung der Join-Tabellenabfrage

$user = M('user');
$b_user = M('b_user');
$c_user = M('c_user');
$list = $user->alias('user')->where('user.user_type=1')
  ->join('b_user as b on b.b_userid = user.user_id')
  ->join('c_user as c on c.c_userid = b.b_userid')
  ->order('b.user_time')
  ->select();

Die user_id der $user-Tabelle ist gleich der b_userid der $b_user-Tabelle;

Die c_userid der $ Die c_user-Tabelle entspricht der b_userid der $b_user-Tabelle

Das obige ist der detaillierte Inhalt vonGängige Methoden zur gemeinsamen Abfrage mehrerer Tabellen in ThinkPHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:jb51.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen