Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да използвате Top with Ties в SQL Server - SQL Server / TSQL урок, част 114

В последната публикация научихме как да върнем горните / долните x редове от таблицата на sql сървъра. В тази публикация ще научим Топ с вратовръзки.

Според BOL
С ВРЪЗКИ
Използва се, когато искате да върнете два или повече реда, които се равняват на последното място в ограничения набор от резултати. Трябва да се използва с клаузата ORDER BY. WITH TIES може да доведе до връщане на повече редове от стойността, посочена в израза. Например, ако изразът е зададен на 5, но 2 допълнителни реда съвпадат със стойностите на колоните ORDER BY в ред 5, резултантният набор ще съдържа 7 реда. "

Нека създадем таблица dbo.Customer и да разберем разликата между Top и Top With Ties.

Create table dbo.Customer(
Id int,
Name VARCHAR(10),
Address VARCHAR(100))

--Insert records in dbo.Customer table
Insert into dbo.Customer
Values(1,'Aamir','XyZ Address')
,(2,'Raza',Null)
,(1,'Aamir','XyZ Address')
,(1,'John','XyZ Address')
,(5,'Lisa','XyZ Address')
 Забелязахме, че имаме дублиращи се записи, както е подчертано по-горе. Нека стартираме заявките по-долу, първо само с отгоре и второ с "With Ties" и наблюдаваме изхода.

Select top (2) * From dbo.Customer 
order by ID
how to use Top x to get top records from table in SQL Server - TSQL Tutorial
Select top (2) WITH TIES * From dbo.Customer order by ID
 
Как да използвате Top with Ties в SQL Server, за да получите най-добрите x редове - SQL Server / TSQL урок
 Първата заявка върна само 2 записа, но втората заявка с „С връзки“ върна три записа, тъй като стойността за Id за третия запис също беше 1, която съвпада с втория ред (стойност на колона за идентификатор=1). Ако използвате "With Ties" с Top, заявката ще ви даде и всички връзки с последния ред въз основа на колоната за подреждане.





  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да проверите нивото на съвместимост на базата данни в SQL Server с помощта на T-SQL

  2. Промяна на функция с таблично значение в SQL Server

  3. Защо (и как) да разделяте колона с помощта на master..spt_values?

  4. Вътрешни елементи за репликация на транзакции на SQL сървър – част 2

  5. Създаване на тригери за одит в SQL Server