loading..
Русский    English
10:56
листать

Упражнение 151 стр. 3

Примечание:

Во втором из объединяемых запросов решения 3.5.2 используется специфическая для  Cистема управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Язык структурированных запросов) — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. SQL Server функция DATEPART. Она необходима, так как из даты сражения (поле date имеет темпоральный тип данных — datetime) нужно извлечь год сражения; в противном случае предикат.

  1. date < 1941
будет давать сравнение с датой 1905 года, в результате преобразования целого числа к типу дата-время (как число дней прошедших от начала 1900 года, что является точкой отсчета дат для настроек по умолчанию в SQL Server 2000). В этом легко убедиться, если выполнить запрос:

Консоль
Выполнить
  1. SELECT CAST(1941 AS DATETIME);
результатом которого будет

  1. 1905-04-26 00:00:00.000

Чтобы оставаться в рамках стандарта, можно было бы использовать следующий предикат:

  1. date < '1941'

Тогда неявное преобразование типа дало бы нужный результат. Опять проверим:

Консоль
Выполнить
  1. SELECT CAST('1941' AS DATETIME);
что дает

  1. 1941-01-01 00:00:00.000

Естественно, правильным будет и предикат, содержащий полную дату начала 1941 года (1 января):

  1. date < '19410101'

Однако вернемся к нашему решению. Оно неверно. Как было сказано, здесь не учитывается ситуация, когда головной корабль присутствует только в Ships, и год его спуска на воду неизвестен. Учесть эту ситуацию можно, добавив к объединению еще один запрос.


Bookmark and Share
Страницы: 1 2 3 4
Тэги:
ALL AND AUTO_INCREMENT AVG battles CASE CAST CHAR CHARINDEX CHECK classes COALESCE CONSTRAINT Convert COUNT CROSS APPLY CTE DATEADD DATEDIFF DATENAME DATEPART DATETIME DDL DEFAULT DELETE DISTINCT DML EXCEPT EXISTS EXTRACT FOREIGN KEY FROM FULL JOIN GROUP BY Guadalcanal HAVING IDENTITY IN INFORMATION_SCHEMA INNER JOIN insert INTERSECT IS NOT NULL IS NULL ISNULL laptop LEFT LEFT OUTER JOIN LEN maker Больше тэгов
Учебник обновлялся
месяц назад
ремонт ноутбуков . Степлер строительный: подробная инструкция
©SQL-EX,2008 [Развитие] [Связь] [О проекте] [Ссылки] [Team]
Перепечатка материалов сайта возможна только с разрешения автора.