Slow CREATE table from subquery using SELECT .. INNER JOIN
Looking on Your pictures, I can guess - for run subquery You also use MySQLWorkbench. Most of software - not return to You back all rows from dataset, by default it filter up to 1000 records (some less)

So select without ORDER BY start work and immediately stop after first XXX rows.

In case of create table:


The subquery return all rows
Insert operation always longer than SELECT ... much, much longer


Possible or not increase speed of insert? it depends from Your current server settings and configuration - may yes, may be not

Also it depend from other server loading:


Select it non-locking operations, it start work immediately 
INSERT FROM SELECT (other form of CREATE from SELECT) - lock all data, so if other transactions running on this time, it spend some time for lock tables


Also You can test query with combined indexes on both tables:
(cityCode,tvlDate) and (cityCode,inventoryDate)