Используя нотацию в старом стиле (не предпочтительно), вы можете написать:
SELECT s.fare, s.commission, s.driver, s._date, v.vehiclenumber, p.productname,
s.source, s.destination, rs.routename, rd.routename, o.ownername
FROM route AS rs, route AS rd, shipment AS s, product AS p, vehicle AS v, owner AS o
WHERE s.vehicleid = s.vehicle
AND s.source = rs.routeid
AND v.owner = o.ownerid
AND s.destination = rd.routeid
AND s.product = p.productid
AND v.vehiclenumber = 'nk-234'
ORDER BY _date
LIMIT 0, 30
Мне нужно было угадать, какие таблицы содержат информацию о тарифах, комиссиях и водителях; Я предположил, что они все в таблице отгрузки.
Начинать имя столбца с подчеркиванием в стандартном SQL строго запрещено, хотя большинство СУБД допускают это. Это выглядит некрасиво, хотя; почему не 'ship_date' в качестве имени столбца?
Лучше использовать явную запись соединения, не в последнюю очередь потому, что меньше шансов забыть условие соединения:
SELECT s.fare, s.commission, s.driver, s._date, v.vehiclenumber, p.productname,
s.source, s.destination, rs.routename, rd.routename, o.ownername
FROM shipment AS s
JOIN route AS rs ON s.source = rs.routeid
JOIN route AS rd ON s.destination = rs.routeid
JOIN vehicle AS v ON s.vehicleid = s.vehicle
JOIN owner AS o ON v.owner = o.ownerid
JOIN product AS p ON s.product = p.productid
WHERE v.vehiclenumber = 'nk-234'
ORDER BY s._date
LIMIT 0, 30