Heim  >  Artikel  >  PHP-Framework  >  Informationen zur Join-Abfrage von ThinkPHP, die nicht das Standardtabellenpräfix verwendet

Informationen zur Join-Abfrage von ThinkPHP, die nicht das Standardtabellenpräfix verwendet

藏色散人
藏色散人nach vorne
2021-04-30 09:26:212624Durchsuche

In der folgenden Tutorial-Kolumne von thinkphp erfahren Sie, dass die Join-Abfrage von ThinkPHP nicht das Standardtabellenpräfix verwendet. Ich hoffe, dass es für Freunde in Not hilfreich ist!

Die Join-Abfrage von ThinkPHP verwendet nicht das Standardtabellenpräfix

Was die Korrelationsabfrage von ThinkPHP betrifft, wird sie im offiziellen Dokument so beschrieben:
Informationen zur Join-Abfrage von ThinkPHP, die nicht das Standardtabellenpräfix verwendet

Die obige Join-Funktion erfordert drei Parameter:

join

Die ( Der vollständige) zuzuordnende Tabellenname und Alias ​​unterstützt drei Schreibmethoden:

写法1:[ '完整表名或者子查询'=>'别名' ]
写法2:'完整表名 别名'
写法3:'不带数据表前缀的表名'

condition

关联条件,可以为字符串或数组, 为数组时每一个元素都是一个关联条件。

type

关联类型,可以为: INNER、LEFT、RIGHT、FULL,不区分大小写,默认为INNER。

verschiedene Präfixe

Im Allgemeinen werden sie in einer Datenbank abgefragt, und in diesem Fall wird der Standardwert verwendet. Sie haben alle die Dasselbe Tabellenpräfix wie (shop_), daher wird es bei Verwendung der mit dem Datenbankmodell verbundenen Abfrage häufig so geschrieben:

Order::alias('o')
     ->join('user u', 'o.user_id = u.id')
     ->select();
Da im obigen Code eine Modellabfrage verwendet wird, wird diese standardmäßig zur Tabelle hinzugefügt Präfix, die vollständigen Tabellennamen der beiden Tabellen lauten

shop_order

und shop_user, und der Assoziationstyp ist standardmäßig INNER-Assoziation. Aber wenn Sie eine Tabelle mit einem

anderen Präfix (zum Beispiel: pay_record)

verknüpfen, funktioniert die obige Abfrageanweisung offensichtlich nicht. In diesem Fall müssen Sie geringfügige Änderungen an der Zuordnungsanweisung vornehmen folgt:

Order::alias('o')
     ->join(['pay_record' => 'r'], 'o.pay_id = r.id')
     ->select();
Auf diese Weise können Sie das Modell verwenden, um Tabellen mit unterschiedlichen Präfixen für Abfragen zu verknüpfen.

Zusammenfassung

Die obige Methode besteht tatsächlich darin, den Join-Parameter in der Join-Funktion von einer Zeichenfolge in ein Array zu ändern.

ThinkPHP ist ein hervorragendes Entwicklungsframework, und die obige Assoziationsmethode ist nur eine davon, und es stehen weitere Methoden zur Verfügung Schauen Sie sich das offizielle Handbuch an: Offizielles ThinkPHP-Handbuch.

Verwandte Empfehlungen:
Die neuesten 10 Thinkphp-Video-Tutorials

Das obige ist der detaillierte Inhalt vonInformationen zur Join-Abfrage von ThinkPHP, die nicht das Standardtabellenpräfix verwendet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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