请注意组合后的表中的行只有两个表中有相同城市的那些行。WHERE子句仍然执行用户的逻辑,就像它以前在NEWSPAPER表中一样。用户给出的逻辑描述了两个表之间的关系。它解读为“选择WEATHER表和LOCATION表中城市相同的那些行”。如果一个城市只在一个表中,则它在另一个表中没有相同的项。在SELECT语句中使用的符号是TABLE.COLUMN—NAME,这里是WEATHER.CITY。
SELECT子句从两个表中选择希望显示的列;表中没有请求的任何列都将被忽略。如果第一行简写为:
oraclc将能确定是哪一个表中的城市。Oracle将提示列名CITY有多义性。SELECT子句中的正确措词应该是WEATHER.CITY或LOCATION.CITY。在本例中,用哪一个可选的列并没有太大差别,但在一些复杂的情况中,来自两个或多个表的具有相同名称的列将包含差别很大的数据,对它们进行选择就会比较困难。
……
展开