inner join renvoie les lignes s'il y a au moins une correspondance dans le tableau, équivalent à join.
left join Renvoie toutes les lignes du tableau de gauche même s'il n'y a aucune correspondance dans le tableau de droite.
right join Renvoie toutes les lignes du tableau de droite même s'il n'y a aucune correspondance dans le tableau de gauche.
full join Renvoie les lignes tant qu'il y a une correspondance dans l'une des tables.
$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();
Annotation de syntaxe Tp :
$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();
L'instruction SQL analysée est :
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
Annotation SQL native :
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
Recommandations associées :
Exemples détaillés de la différence entre diviser et rejoindre en JavaScript
JavaScript met tous les éléments dans le tableau Entrez une méthode de chaîne join()
Exemple de code pour utiliser la fonction de jointure php
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!