Solve the following sql problem:
Among the trains that run in the east direction, how many of them have more than 2 long cars?

Schema:
SCHEMA:
- Table: cars
  - Column: id
    - Samples: [1, 2, 3, 4, 5]
  - Column: train_id
    - Samples: [1, 1, 1, 1, 2]
  - Column: position
    - Samples: [1, 2, 3, 4, 1]
  - Column: shape
    - Samples: [rectangle, rectangle, rectangle, rectangle, rectangle]
  - Column: len
    - Samples: [short, long, short, long, short]
  - Column: sides
    - Samples: [not_double, not_double, not_double, not_double, not_double]
  - Column: roof
    - Samples: [none, none, peaked, none, flat]
  - Column: wheels
    - Samples: [2, 3, 2, 2, 2]
  - Column: load_shape
    - Samples: [circle, hexagon, triangle, rectangle, circle]
  - Column: load_num
    - Samples: [1, 1, 1, 3, 2]
- Table: trains
  - Column: id
    - Samples: [1, 2, 3, 4, 5]
  - Column: direction
    - Samples: [east, east, east, east, east]

SELECT SUM(CASE WHEN T2.longCarsNum > 2 THEN 1 ELSE 0 END)as count FROM trains AS T1 INNER JOIN ( SELECT train_id, COUNT(id) AS longCarsNum FROM cars WHERE len = 'long' GROUP BY train_id ) AS T2 ON T1.id = T2.train_id WHERE T1.direction = 'west'