Мне нужно получить количество инвентаря, сгруппированное по дате. Я использовал следующий запрос. Моя проблема заключается в том, что приложение, находящее данные, является EST, а db работает в часовой пояс GMT. Поэтому, когда я выбираю конкретную дату в приложении, он должен получить соответствующую дату GMT и получить ее счет. В настоящее время им является запрос с использованиемORACLE EST GMT date issue
SELECT tble.dte, COUNT(DISTINCT INVENTORY_ID)As cmt
FROM ATL_GROUNDING_INFO groundinginfo
right join (SELECT
TO_DATE('03/11/2015 04:00:00','MM/DD/YYYY HH24:MI:SS') - 1 + rownum dte
FROM DUAL
CONNECT BY ROWNUM < 366
AND
TO_DATE('03/11/2015 04:00:00','MM/DD/YYYY HH24:MI:SS') - 1 + rownum <=
TO_DATE('04/02/2015 03:59:59','MM/DD/YYYY HH24:MI:SS')
) tble
ON tble.dte = (groundinginfo.DATE_TURNED_IN)
group by tble.dte
order by tble.dte desc`
Но в этом случае подсчет неверен, как 11 марта EST = 11March 04:00:00 утра до 12 Mar 03:59:59 GMT. поэтому, когда я искал 11 марта, мне нужно получить данные между указанным выше диапазоном дат от БД. пожалуйста, помочь
Форматирование кода будет сделать намного легче читать. Сохраняете ли вы данные в столбцах «date»? столбцы timestamp с часовым поясом? Или что-то другое? –
DATE_TURNED_IN IS даты DATATYPE IN DB – Ann
OK. И вы действительно хотите преобразовать это в EST? Или US/Eastern (что может быть EST или EDT)? –