Inner Join gibt Zeilen zurück, wenn es mindestens eine Übereinstimmung in der Tabelle gibt, was einem Join entspricht.
Linker Join Gibt alle Zeilen aus der linken Tabelle zurück, auch wenn es in der rechten Tabelle keine Übereinstimmung gibt.
Rechter Join Gibt alle Zeilen der rechten Tabelle zurück, auch wenn es in der linken Tabelle keine Übereinstimmung gibt.
vollständiger Join Gibt Zeilen zurück, solange es eine Übereinstimmung in einer der Tabellen gibt.
$lists = $this->orderModel ->alias('t') ->field('t.*,o.order_id as ccsid') ->join('left join __ORDER__ as o on t.order_id = o.third_order_id and t.source = o.source') ->where($map) ->order("create_time DESC") ->limit($page->firstRow . ',' . $page->listRows) ->select();
Tp-Syntaxanmerkung:
$lists = $this->orderModel // M('third_order'); ->alias('t') // 别名 ->field('t.*,o.order_id as ccsid') // 要查的字段 ->join('left join __ORDER__ as o on t.order_id = o.third_order_id and t.source = o.source') //关联表(左链接 order表 as o 别名 on关系 t.xx = o.xxx and t.xxx = o.xxx ) ->where($map) // 条件 ->order("create_time DESC") // 排序 ->limit($page->firstRow . ',' . $page->listRows) // 取几条 ->select();
Die analysierte SQL-Anweisung lautet:
SELECT t.*,o.order_id as ccsid FROM db_third_order t left join db_order as o on t.order_id = o.third_order_id and t.source = o.source WHERE t.status <> 0 ORDER BY create_time DESC LIMIT 0,20
Native SQL-Anmerkung:
select 表名(别名).* , 表名(别名). 字段 as 别名 from 主表 空格 别名(t) left join 从表 as 别名 (o) on t.xxx = o.xxx and t.xxx = o.xxx <表关系> where 条件 order by 字段名 desc 倒叙 limit 0,20
Verwandte Empfehlungen:
Detaillierte Beispiele für den Unterschied zwischen Split und Join in JavaScript
JavaScript fügt alle Elemente ein Geben Sie im Array eine Zeichenfolge ein. Methode join()
Codebeispiel für die Verwendung der PHP-Join-Funktion
Das obige ist der detaillierte Inhalt vonBeispiele für die Verwendung von Joins in thinkPHP3.2. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!