Вам просто нужно изменить формат даты данных, которые вы запрашиваете, чтобы дать вам только один день.
Мы можем сделать это, используя CONVERT()
, как это
CONVERT(VARCHAR(10),hiredate,120)
Кроме того, вам необходимо заменить LIKE
для точного соответствия системы. Поскольку вы работаете с несколькими параметрами поиска, я бы порекомендовал использовать IN
и отдельный список запятых, чтобы упростить управление списком дат найма, например так.
WHERE HireDate IN ('1992-05-01','1992-12-31','1992-04-07')
Поэтому ваш конечный скрипт должно быть;
SELECT
*
FROM employees
WHERE CONVERT(VARCHAR(10),hiredate,120) IN ('1992-05-01','1992-12-31','1992-04-07')
ORDER BY HireDate ASC
Обратите внимание: если вы хотите перечислить «в порядке c старшинства», вам нужно будет создать отдельную таблицу, в которой перечислены названия должностей и какой-то «уровень». система или просто точная система нумерации, которая детализировала, какие должности были на каком уровне старшинства. В качестве альтернативы, если вы работаете с очень небольшим количеством должностей, как, например, в примерах данных, вы можете использовать оператор CASE
для упорядочения результатов. например,
CASE Title WHEN 'President' THEN 1 'Vice President' THEN 2 ELSE 99 END