SELECT A.CATALOG_ID AS CATALOGID, A.DETAIL_ID AS DETAILID,
B.ASSETS_NM AS CATALOGNAME , C.ASSETS_NM AS DETAILNAME ,
FROM G_ARTICLE A
LEFT JOIN G_ASSETS B ON A.CATALOG_ID = B.CATALOG_ID AND B.DETAIL_ID=''
LEFT JOIN G_ASSETS C ON A.CATALOG_ID = C.CATALOG_ID AND A.DETAIL_ID=C.DETAIL_ID
WHERE A.DEL_FLG!=1
ORDER BY ARTICLE_ID DESC
1.一般情况下左连接和直连接都能实现相同的功能
但是左连接一般用在根据id取name的应用上,如例根据主表A确定记录数,在左连接B表和C表
用来取得CATALOGNAME和DETAILNAME。
2.左连接可以连接相同的表,起不同的别名即可。
3.ON后面的相当于where条件,但是只能限制从表,不能限制主表。
4.只有用where条件才能限制主表,但是要注意where语句的位置,应写在LEFT JOIN之后 。
5.ORDER BY语句通常写在sql语句的最后面。
用左连接得出的数据作为查询结果集中的列存在
主表则决定查询结果集中的行数。