Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Сравнение записей в таблице
|
|||
|---|---|---|---|
|
#18+
Изучаю sql столкнулся со сложностями в решении элементарной задачи. Имеется два отношения: в отношение Battles включены название и дата битвы, в которой участвовали корабли, а в отношении Outcomes – название корабля, название битвы, в которой они участвовали, результат участия данного корабля в битве (потоплен-sunk, поврежден - damaged или невредим - OK). Условие задачи: найдите корабли, `сохранившиеся для будущих сражений`; т.е. выведенные из строя в одной битве (damaged), они участвовали в другой, произошедшей позже. В целом у меня есть понимение, как решить задачу, но проблема в том, чтобы выполнить основное условие задачи: "найдите корабли, `сохранившиеся для будущих сражений`. Каким образом можно сравнить дату битвы одного и того же корабля? То есть есть две записи, одна более ранняя, другая более поздняя, если у корабля есть запись с более поздней датой битвы , значит он удовлетворят условиям задачи. пробовал решить так, но тут неправильно сравниваются даты, а как правильно я не знаю. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2019, 11:11 |
|
||
|
Сравнение записей в таблице
|
|||
|---|---|---|---|
|
#18+
Crank_1986, 1 самое простое, очевидное и "читаемое" это отбор с условием where result = 'damaged' + exists в котором проверяешь, что для этого корабля, есть запись с бОльшей датой чем в основном запросе 2 или проявить "смекалку" :) Код: sql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2019, 11:23 |
|
||
|
Сравнение записей в таблице
|
|||
|---|---|---|---|
|
#18+
court, Спасибо за ответ, будем пробовать) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2019, 11:26 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39901732&tid=1686806]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
32ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 248ms |
| total: | 372ms |

| 0 / 0 |
