Advertisement
Guest User

Queries

a guest
Jan 23rd, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ----------Query №1----------
  2. SELECT TRAIN_ID, DELAY
  3.   FROM DELAYS INNER JOIN TIMETABLE ON DELAYS.TRIP_ID = TIMETABLE.TRIP_ID AND DELAYS.STATION_NUMBER = TIMETABLE.STATION_NUMBER
  4.               INNER JOIN TRIPS ON TIMETABLE.TRIP_ID = TRIPS.ID
  5. WHERE TRAIN_ID = 1 AND TIMETABLE.ARRIVAL_TIME < TIMESTAMP '2017-12-01 12:00:00.00'
  6. ORDER BY ARRIVAL_TIME DESC
  7. FETCH FIRST ROW ONLY;
  8.  
  9. ----------Query №2----------
  10. SELECT *
  11.   FROM (SELECT TRAINS.*
  12.     FROM TRAINS INNER JOIN ROUTES ON TRAINS.ROUTE_ID = ROUTES.ID
  13.     WHERE ROUTES.STATION_ID = 10)
  14. WHERE TRAIN_ID = (SELECT TRAINS.TRAIN_ID
  15.     FROM TRAINS INNER JOIN ROUTES ON TRAINS.ROUTE_ID = ROUTES.ID
  16.     WHERE ROUTES.STATION_ID = 16);
  17.  
  18. ----------Query №3----------
  19. SELECT DISTINCT TRANSIT_ID, FIN
  20. FROM(SELECT TRANSITS.ID AS TRANSIT_ID, FINISH_STATION AS FIN, TRANSITS.ORDER_NUMBER, COUNT (TRANSITS.ID) OVER (PARTITION BY TRANSITS.ID) AS CNT
  21.   FROM TRANSITS INNER JOIN ROUTES ON ROUTES.ID = TRANSITS.ROUTE_ID
  22. WHERE STATION_ID = 2 OR STATION_ID = 22) INNER JOIN TRANSITS ON TRANSIT_ID = TRANSITS.ID
  23. WHERE CNT = 2;
  24.  
  25. --2 22
  26.  
  27. ----------Query №4----------
  28. SELECT MIN(FREE_TICKETS) AS FREE_PLACES
  29.   FROM (SELECT *
  30.   FROM (SELECT TRAINS.TRAIN_ID, TRAINS.ROUTE_ID, TIMETABLE.STATION_NUMBER, ROUTES.ORDER_NUMBER AS LOW, TICKETS_QUANTITY - SUM(PASSENGERS_CHANGE+TRANSIT_PASSENGERS_CHANGE) OVER (PARTITION BY TRIP_ID ORDER BY STATION_NUMBER) AS FREE_TICKETS
  31.     FROM TRAINS INNER JOIN ROUTES ON TRAINS.ROUTE_ID = ROUTES.ID
  32.       INNER JOIN TRIPS ON TRAINS.TRAIN_ID = TRIPS.TRAIN_ID
  33.       INNER JOIN TIMETABLE ON TRIPS.ID = TIMETABLE.TRIP_ID
  34.     WHERE ROUTES.STATION_ID = 10 AND ARRIVAL_TIME BETWEEN TIMESTAMP '2017-12-01 00:00:00.00' AND TIMESTAMP '2017-12-01 20:00:00.00')
  35.   WHERE TRAIN_ID = (SELECT TRAINS.TRAIN_ID
  36.     FROM TRAINS INNER JOIN ROUTES ON TRAINS.ROUTE_ID = ROUTES.ID
  37.     WHERE ROUTES.STATION_ID = 16))
  38. WHERE STATION_NUMBER BETWEEN LOW AND (SELECT ORDER_NUMBER
  39.     FROM TRAINS INNER JOIN ROUTES ON TRAINS.ROUTE_ID = ROUTES.ID
  40.     WHERE ROUTES.STATION_ID = 16);
  41.  
  42. ----------Query №5----------
  43. SELECT TRIPS.TRAIN_ID, ROUTE_ID, TYPE, DEPARTURE_TIME
  44.   FROM (SELECT ROUTES.ID
  45.    FROM ROUTES
  46.   WHERE STATION_ID = 24) INNER JOIN TRAINS ON ID = TRAINS.ROUTE_ID
  47.   INNER JOIN TRIPS ON TRAINS.TRAIN_ID = TRIPS.TRAIN_ID
  48.   INNER JOIN TIMETABLE ON TRIPS.ID = TIMETABLE.TRIP_ID
  49. WHERE DEPARTURE_TIME BETWEEN TIMESTAMP '2017-12-01 17:00:00.00' AND TIMESTAMP '2017-12-01 20:00:00.00';
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement