解析区别何在SQL语句中的left_join和inner_join
身份证件类型
----------------------------------
十一
二十一
三十二
表B(id,类):
标识类
---------------------------------
十一
二十二
SQL语句1:选择A *,B *加入B = = 1张数据左;
SQL语句2:选择A *,B *加入B = = 1张数据左;
SQL语句3:选择A *,B *加入B = = 1张数据左;
SQL语句1的执行结果是:
张b.class用户类型数据
----------------------------------------
一千一百一十一
二千一百二十二
三十二
SQL语句2的执行结果是:
张b.class用户类型数据
----------------------------------------
一千一百一十一
二千一百二十二
SQL语句3的执行结果是:
张b.class用户类型数据
----------------------------------------
一千一百一十一
二十一
三十二
SQL语句左1可见,连接表中的所有记录将显示在条件查询后面,它不起作用,除非稍后加上选定的位置,这是SQL语句2;在条件后面的3个SQL语句可见,右表的限制将起作用。
**************************************************************************
SQL语句4:选择A *,B *内连接在数据上1张= =;
SQL语句5:选择A *,B *内连接在数据上1张= =;
SQL语句6:选择A,B从A,B,张=数据和用户类型= 1;
SQL语句7:选择A,B从A,B,用户类型= 1张=数据;
四项声明的结果如下:
张b.class用户类型数据
----------------------------------------
一千一百一十一
二千一百二十二
因此,内部连接后面的约束将完全相同,这与执行的结果相同。此外,WHERE语句和内部连接确实得到相同的结果,只有不同的效率(这是我没有测试过的,但我相信这个结论)。
但是SQL语句6比SQL语句7效率低,并且我没有足够的数据来测试它,但我相信它是。