Example: Using Inner Join

Let us now see a few examples of inner join on the tables used in the airline baggage tracking application.

Example 6-123 Fetch the ticket number, passenger name, and bag details of all the passengers

SELECT a.ticketNo, b.fullName, c.bagArrivalDate FROM ticket a, ticket.passengerInfo b,
      ticket.bagInfo c WHERE a.ticketNo = b.ticketNo AND b.ticketNo=c.ticketNo
Explanation: This is an example of an inner join of three tables, that is, the parent table ticket, and the sibling tables passengerInfo and bagInfo. The query returns the ticket number and the arrival date of the bags of all the passengers.
Output:
{"ticketNo":1762324912391,"fullName":"Elane Lemons","bagArrivalDate":"2019-03-15T10:13:00.0000Z"}
{"ticketNo":1762355527825,"fullName":"Doris Martin","bagArrivalDate":"2019-03-22T10:17:00.0000Z"}
{"ticketNo":1762344493810,"fullName":"Adam Phillips","bagArrivalDate":"2019-02-01T16:13:00.0000Z"}
{"ticketNo":1762392135540,"fullName":"Adelaide Willard","bagArrivalDate":"2019-02-15T21:21:00.0000Z"}
{"ticketNo":1762376407826,"fullName":"Dierdre Amador","bagArrivalDate":"2019-03-07T13:51:00.0000Z"}

5 rows returned

Example 6-124 Fetch the name of the passenger whose bag’s last seen station is “MEL”

SELECT a.fullName FROM ticket.passengerInfo a, ticket.bagInfo b WHERE a.ticketNo = b.ticketNo AND b.lastSeenStation = "MEL"
Explanation: This is an example of an inner join of the sibling tables passengerInfo and bagInfo. The name of the passenger whose bag was last seen at the "MEL" station is returned.
Output:
{"fullName":"Adam Phillips"}

1 row returned

Example 6-125 Fetch the name of the passenger whose flight route destination is "MEL"

SELECT a.fullName FROM ticket.passengerInfo a, ticket.bagInfo.flightlegs b WHERE a.ticketNo =
      b.ticketNo AND b.fltRouteDest = "MEL"
Explanation: This is an inner join of two tables, passengerInfo and flightlegs, that are not in an ancestor-descendant relationship.
Output:
{"fullName":"Adam Phillips"}

1 row returned