Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

LINQ to SQL w każdym n-tym wierszu z tabeli

Czasami TSQL jest drogą do zrobienia. Użyłbym ExecuteQuery<T> tutaj:

    var data = db.ExecuteQuery<SomeObjectType>(@"
SELECT * FROM 
(SELECT *, ROW_NUMBER() OVER (ORDER BY id) AS [__row]
FROM [YourTable]) x WHERE (x.__row % 25) = 1");

Możesz także zamienić n :

    var data = db.ExecuteQuery<SomeObjectType>(@"
DECLARE @n int = 2
SELECT * FROM 
(SELECT *, ROW_NUMBER() OVER (ORDER BY id) AS [__row]
FROM [YourTable]) x WHERE (x.__row % @n) = 1", n);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak mogę połączyć się z zewnętrzną bazą danych z instrukcji sql lub procedury składowanej?

  2. Kiedy/dlaczego używać kaskadowania w SQL Server?

  3. Czy klucz obcy może mieć wartość NULL i/lub być duplikatem?

  4. SSMS wersja 18 – brak diagramów bazy danych

  5. Jak znaleźć sortowanie w SQL Server (T-SQL)