|
Программирование >> Исключение дубликатов строк
Поиск ноибольшвго зночвнип п МПХ Наибольшее значение, возвращенное типизированным выражением, можно определить с помощью функции МАХ. Функция МАХ может обрабатывать любые типы данных. Возвращаемое значение зависит от обрабатываемых данных. Символьные строки Значение, возвращаемое МАХ, основывается на последовательности сортировки, используемой системой базы данных или компьютером. Например, если база данных использует множество символов ASCII и нечувствительна к регистру, то имена компаний будут отсортированы следующим образом: ...4 Dimension Productions...Als Auto Shop...allegheny & associates...Zercon Productions...zorn credit services . В этом случае MAX возвратит zorn credit services как значение MAX. Числа MAX возвращает наибольшее число. Дата/Время МАХ оценивает даты и время в хронологическом порядке и возвращает самую недавнюю (или самую давнюю) дату и время. Вот примеры того, как следует использовать МАХ для ответа на запрос: What is the largest amount weve paid on a contract? ( Какая наибольшая сумма была уплачена по контракту? ) Преобразование: Select the maximum contract price as LargetContractPrice from the engagements table (Выбрать максимальную цену контракта как LargestContractPrice из таблицы Ангажементы ) Уточнение: Select the maxtrntrnt (contract price) as LargestContractPrice from the engagements table (Выбрать максимум (цена контракта) как LargestContractPrice из Ангажементы ) SQL SELECT MAX(ContractPrice) AS LargestContracrPrice FROM Engagements What was the largest line item total for order 3314? ( Какова была наибольшая сумма для элемента строки в заказе 3314? ) Преобразование: Select the maximum price times quantity ordered as LargestltemTotal from the order details table where the order ID is 3314 (Выбрать максимум цены, умноженной на заказанное количество, как LargestltemTotal из таблицы Детали заказа , где идентификатор заказа равен 3314) Select the maxtmttm (price times * quantity ordered) as LargestltemTotal from the order details table where the order ID = 3314 (Выбрать максимум (цена * заказанное количество) как LargestltemTotal из Детали заказа , где идентификатор Уточнение: заказа 3314) SELECT MAX(Price * QuantityOrdered) AS LargestltemTotal FROM Order.Details WHERE OrderlD = 3314 В следующем примере используется опция DISTINCT для возврата неповторяющихся экземпляров самой недавней даты проверки в таблице Staff. В этом случае проверка двух или нескольких штатных сотрудников могла быть проведена не позже прошлого четверга, но нам необходимо получить только одно появление этой даты. What is the most recent date that we reviewed any of our stuff? ( Указать самую последнюю дату проверки любого из наших штатных сотрудников .) Преобразование: Уточнение Select the maximum unique review date as MostRecentReviewDate from the staff table (Выбрать максимальную уникальную дату проверки как MostRecentReviewDate из таблицы Персонал ) Select the maximum unique (distinct review date) as MostRecentReviewDate from the staff table (Выбрать max (неповторяющуюся дату проверки) как MostRecentReviewDate из Персонал ) SELECT МАХ(DISTINCT ReviewDate) AS MostRecentReviewDate FROM Staff Хотя стандарт SQL определяет DISTINCT как опцию для функции МАХ, DISTINCT не оказывает никакого влияния на функцию МАХ. Максимальное значение может быть только одно, независимо от того, отличается оно от других или нет. Например, оба приведенные ниже выражения возвращают одно и то же значение: SELECT MAX(HireDate) FROM Agents SELECT MAX(DISTINCT HireDate) FROM Agents Мы представили оба варианта функции, поскольку они являются частью текущего стандарта SQL, но рекомендуем использовать только функцию МАХ без опции DISTINCT. Поиск ноименьшего зночения с использононисм MIN Функция MIN, позволяет определить наименьшее значение, возвращенное типизированным выражением. Она работает подобно функции МАХ, но возвращает противоположное значение: первый символ в строке (на основании последовательности сортировки), наименьшее число и самую недавнюю дату или время. Используя функцию MIN, можно ответить на запросы, подобные приведенным ниже: What is the lowest price we charge for a product? ( Указать наименьшую цену, уплаченную За товар? ) Преобразование: Select the minimum price as LowestProductPrice from the products table (Выбрать минимальную цену как LowestProductPrice Уточнение: из таблицы Товары ) Select the minimum (price) as LowestProductPrice from the products table (Выбрать т1п(цена) как LowestProductPrice из Товары ) SELECT MIN(Price) AS LowestProductPrice FROM Products What was the lowest line item total for order 3314? ( Какова была наименьшая сумма для элемента строки в заказе 3314? ) Преобразование: Select the minimum price times quantity ordered as LowestltemTotal from the order details table where the order ID is 3314 (Выбрать минимум цены, умноженной на заказанное количество, как LowestltemTotal из таблицы Детали заказа , где идентификатор заказа равен 3314)
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки. |