2017-09-12 35 views
1

我不確定他們是否稱他們爲對象,但在Codecademy課程here上他們使用了字母f,但沒有解釋它是什麼。另外,如果它確實是一個對象,也就是我所理解的它的副本,那麼它們如何使用大於相同屬性的條件呢?對不起,壓倒這麼多。請善意解釋。 以下是從教訓的摘錄:SQL表格對象

例如,假設flight_id增量每增加 飛行,我們可以使用下面的查詢來查看由承運人 航班號航班,以及序列號:

SELECT carrier, id, 
    (SELECT COUNT(*) 
FROM flights f 
WHERE f.id < flights.id 
AND f.carrier=flights.carrier) + 1 
AS flight_sequence_number 
FROM flights; 

回答

0

好了,所以這是怎麼回事是你有一個主查詢

select ... from flights; 

裏面,你有一個子查詢:

select ... from flights where ....; 

這裏的問題是,內航班查詢需要引用外部的一個,所以我們在這裏重新命名錶格:

select ... from flights f where f. ... = flights. ... 

這意味着內部查詢使用f來引用flights行,而flights引用外部查詢。

在數據庫術語中,我們稱之爲這些關係,我們給了內部表一個本地範圍的名稱。與命令式語言不同,此時完全隱藏了名稱(fflights指向同一關係中的不同行)。