Как отобразить дату и время из столбца datetime в SQL - PullRequest
0 голосов
/ 21 ноября 2018

У меня есть столбец staff_registered, в котором указана дата и время регистрации персонала.Однако я хочу иметь возможность получить дату и время для всех сотрудников, которые зарегистрировались 22 января 2007 года. Как я могу показать время?

SELECT  EMPLOYEE_ID, FIRST_NAME, LAST_NAME, TO_CHAR (SYSDATE,'DD MON YY 
HH:MI:SS') 
FROM EMPLOYEE
WHERE TO_CHAR (REGISTRATION_DATE, 'DD-MON-YY') = '22-JAN-07';

Я написал это как отправную точкуЯ знаю, что это неправильно, потому что сегодня не 22-Январь-07 или время, но я не знаю, как это исправить.

Ответы [ 3 ]

0 голосов
/ 21 ноября 2018

если я правильно понял, у вас есть столбец, содержащий строку, содержащую то, что вы ищете '05 -SEP-2018 '

Если это так, я бы предложил что-то вроде

SELECT  EMPLOYEE_ID, FIRST_NAME, LAST_NAME, TO_CHAR (SYSDATE,'DD MON YY HH:MI:SS') 
FROM STUDENT
WHERE CONTAINS(TO_CHAR(REGISTRATION_DATE, '05-SEP-2018'))

Дайте мне знать, если это поможет

0 голосов
/ 21 ноября 2018

Используйте TRUNC без TO_CHAR преобразования с этим условием фильтра:

WHERE TRUNC(REGISTRATION_DATE) = date'2018-09-05'

Так как REGISTRATION_DATE уже является полем типа DATE, isn 'не так ли?

0 голосов
/ 21 ноября 2018

Я полагаю, вы имеете дело с опечаткой / пердением мозга.Вы выбираете сегодняшнюю (SYSDATE) дату в своем операторе выбора.Вы хотите выбрать REGISTRATION_DATE.Не имеет значения, что вы ищете, потому что в настоящее время он всегда будет возвращать текущую дату, пока вы не измените ее на значение ниже.

SELECT  EMPLOYEE_ID, FIRST_NAME, LAST_NAME, TO_CHAR (REGISTRATION_DATE,'DD MON YY HH:MI:SS') 
FROM EMPLOYEE
WHERE TO_CHAR (REGISTRATION_DATE, 'DD-MON-YY') = '22-JAN-07';

Если я не понял ваш вопрос ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...