Получение результатов таблицы на основе начальной и конечной даты с использованием единой даты

В настоящее время у меня возникают проблемы с запросом набора данных, содержащего несколько записей об уникальных клиентах. Каждая строка имеет дату начала и дату окончания, а самая последняя запись помечена как самая актуальная, а дата окончания - как 31 декабря 1999 года. Я пытаюсь написать запрос, чтобы я мог вернуть все записи, которые относятся к определенной дате, например к концу месяца (31.10.2018). Моя цель в Oracle SQL Developer - ввести все записи / данные в день 31.10.2017, чтобы строки со знаком * были единственными, которые я хотел бы вернуть. Конечный результат - сделать это с гораздо большим файлом и увидеть весь год в конце месяца, где находился каждый человек, исходя из даты окончания месяца в течение 1 года.

Получение результатов таблицы на основе начальной и конечной даты с использованием единой даты

Было неясно, каковы были ваши требования, потому что ваши данные выборки не включают примеры, которые охватывают крайние случаи. Технически ответ Брехнаа правильный, потому что он дает результаты, которые вы отметили как желаемые. Мой ответ был правильным, потому что он соответствует вашему предполагаемому значению. Вы должны были включить хотя бы одну примерную запись, где дата окончания не была 31 декабря 1999 года, но она должна была быть включена в набор результатов.

Jeffrey Kemp 28.12.2018 07:12
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
0
1
63
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Можете ли вы уточнить, какой результат вы ожидаете? Я вижу, что вы пытаетесь реализовать здесь временную функциональность. Пожалуйста, проверьте эту ссылку, если это соответствует вашим целям. Оракул временный . Что касается выделенных записей, вы можете использовать простое условие в предложении where, подобное этому, и отформатировать часть даты по мере необходимости:

select * from emp where  endd=to_date('9999/12/31','yyyy/mm/dd')
Ответ принят как подходящий

Я думаю, вы хотите перечислить все записи, актуальные на указанную дату. Для этого я бы просто использовал условие BETWEEN:

select * from mytable
where date'2017-31-10' between start and end

Другие вопросы по теме