|
выборка и сравнение записей
|
|||
---|---|---|---|
#18+
добрых дней есть задача: получить список посудин, которые уже выполнили свои заказы, моя загвоздка в том, что суда, которые ранее выполняли заказы, могли снова выйти в рейс, выборкой мне их получать ненужно, мне нужны свободные судна, без тех что в рейсе, и я их получаю, но не верно, мне как будто не хватает ещё одного условия, но я не понимаю какого. первая картинка - выборка всего что есть и мне, в теории, ненужно видеть последние две записи, так как вторая не будет проходить по условию на дату, что-то типа: WHERE way."Date_Complete" < current_date, ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2021, 22:15 |
|
выборка и сравнение записей
|
|||
---|---|---|---|
#18+
проблема решена, думаю, в операторе WHERE достаточно было написать вложенный подзапрос, который делает ровно наоборот: получает id суден, которые имеют значение даты больше, чем текущая, вот текст запроса, может кому-то поможет или кто-то покажет, как сделать его лучше: SELECT DISTINCT ship."ID_Ship" id_ship, ship."Name_Ship" name_ship, cat."Vmestumost" volume, cat."Gryzopod" mass FROM lab3.ship ship INNER JOIN lab3.delivery del ON del."ID_Ship" = ship."ID_Ship" INNER JOIN lab3."category_Ship" cat ON cat."ID_Cat_Ship" = ship."ID_Categ_Ship" INNER JOIN lab3.way way ON way."ID_Delivery" = del."ID_Delivery" WHERE way."Date_Complete" < current_date AND ship."ID_Ship" != (SELECT DISTINCT ship."ID_Ship" id_ship FROM lab3.ship ship INNER JOIN lab3.delivery del ON del."ID_Ship" = ship."ID_Ship" INNER JOIN lab3."category_Ship" cat ON cat."ID_Cat_Ship" = ship."ID_Categ_Ship" INNER JOIN lab3.way way ON way."ID_Delivery" = del."ID_Delivery" WHERE way."Date_Complete" > current_date) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2021, 22:27 |
|
выборка и сравнение записей
|
|||
---|---|---|---|
#18+
Вы не учли, что будет, если way."Date_Complete" = current_date) Такой рейс считается завершенным или незавершенным? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2021, 12:22 |
|
выборка и сравнение записей
|
|||
---|---|---|---|
#18+
кстати, да, вы правы, не учел. также не учел, или не знал, но если в подзапросе более одного результат, то запрос работать не будет вовсе ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2021, 16:14 |
|
|
start [/forum/topic.php?fid=53&msg=40070226&tid=1994038]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
28ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
others: | 250ms |
total: | 351ms |
0 / 0 |