Я получаю неправильный результат в запросе SQL - PullRequest
0 голосов
/ 25 сентября 2018

Это мой запрос, в котором я ищу данные, введенные в 2005 году, но он показывает неверные данные

image

Ответы [ 3 ]

0 голосов
/ 25 сентября 2018

Добро пожаловать в S / O.Как новичок, вы не должны публиковать изображения, чтобы попробовать ваш запрос или данные.Поместите фактический запрос в свой пост (используйте пробелы, а не вкладки для форматирования).Вместе с вашими примерами данных.

При запросе дат в SQL ваши даты не форматируются должным образом, если они представляют собой поля даты по сравнению с символом char.Стандартный формат: «гггг-мм-дд», поэтому, если вы ищете все действия с 1 января 2005 года по 31 декабря 2005 года, вы можете сделать

where
       pubDate >= '2005-01-01'
   AND pubDate < '2006-01-01'
   AND category = 'COMPUTER';

Я сделал МЕНЬШЕ, чем 1 января,2006 год, если у вас когда-либо была дата / время, это будет 31 декабря до 11:59:59 вечера

.
0 голосов
/ 25 сентября 2018
SELECT title,pubdate AS "Publish Date"
    FROM books
    WHERE pubDate >= '2005-01-01' AND pubDate <= '2005-12-31'
    AND category = 'COMPUTER'

Вам необходимо правильно использовать формат даты гггг-мм-дд.

0 голосов
/ 25 сентября 2018

Вместо этого вы можете использовать функцию Year () .

Выполните следующий запрос:

Select title, pubdate as "Publish Date" 
From books 
Where year(pubdate) = 2005
And category = 'Computer'
...