Хороший день. У меня есть пластина в Скл Сервер, которого Вы содержите Id
, Nombre
, Numero
. Имена могут повторяться, но у каждого будет один id
уникум, я нуждаюсь в том, чтобы получить имена, у которых есть число (Phone
) больше.
Я присоединяю образы для того, чтобы Вы были яснее.
Что мне нужно, чтобы Вы были больше, Вы колонна Phone
и что показали Вам три колонны.
Так Вы я функционируете, но мне не нравится ничто мысль сравнивать по имени.
SELECT C.ShipperId, C.Shippername, C.Phone
FROM (
SELECT MAX(A.Phone) AS Phone, A.shippername
FROM table A
GROUP BY A.shippername) B
JOIN table C
ON B.phone = C.phone
and B.shippername = C.shippername
Ты можешь получать самые высокие Ids со следующей консультацией:
SELECT TOP 2 * FROM Tabla
ORDER BY ShipperId DESC
С этим, результат рукоположен несовершеннолетнему большего и ты выбираешь два реестра (или число желанных реестров) больше высот.
Обновление
Чтобы брать как максимальная стоимость поле Phone
, следующий query может помогать:
SELECT * FROM Tabla
WHERE Phone = (SELECT MAX(Phone) FROM Tabla)
ORDER BY ShipperId
группируй из-за ShipperName получая max
ShipperID для каждого имени, asГ-:
select ShipperName, max(ShipperID)
from MiTabla
group by ShipperName
Возможно реализовывать следующей формы
SELECT * FROM Shipper WHERE (Phone > (SELECT MIN(Phone) FROM Shipper));
сейчас давайте предполагать, что ты ввел еще одно поле
insert into shipper values (5,"platano",3);
, и ты хочешь найти всегда самого большего, можешь использовать оператор NOT
и результат ее operaciГіn будет противоположностью а мы используем оператор NOT
SELECT * FROM Shipper WHERE NOT (Phone < (SELECT MAX(Phone) FROM Shipper));