SQL Server non dovrebbe supportare RANGE?


9

Come qualcuno che sviluppa siti Web e fa un po 'di SQL Server, mi sembra un gioco da ragazzi che SQL Server dovrebbe supportare una semplice clausola che indica che i risultati dovrebbero includere solo un intervallo specifico di righe. Ad esempio, le righe da 30 a 39.

Allo stato attuale, l'implementazione del paging in SQL Server è in realtà un po 'al di là delle capacità di molti sviluppatori Web quando il loro focus principale non è SQL.

Inoltre, semplificherebbe notevolmente le query che potrebbero essere già complesse a causa dei join e di altre condizioni.

Inoltre, sono del parere che una clausola del genere possa avere maggiori possibilità di essere ottimizzata internamente nel tempo perché la logica sarebbe interamente sotto il controllo di Microsoft.

L'ho menzionato qualche tempo fa in un altro forum e molte delle risposte sembravano suggerire che ciò non sarebbe desiderabile.

Dato che qualsiasi tecnica esistente per il paging verrebbe lasciata intatta, quale possibile ragione potrebbe esserci per non aggiungere una clausola del genere? E sarebbe molto meglio per le persone come me.

Qualcuno può avere una buona ragione per cui Microsoft non l'ha fatto?

Risposte:


9

Microsoft ha fatto questo con la prossima versione di SQL Server, nome in codice "Denali", così come SQL CE 4. Dai un'occhiata alle parti OFFSET & FETCH della clausola ORDER BY qui: http://msdn.microsoft.com/en- us / library / ms188385 (v = sql.110) aspx


Bene, non è esattamente così semplice come immaginavo, ma lo prenderò! E sono molto felice di sapere che non sono l'unica persona che concorda sul fatto che valga la pena. Attendo con impazienza l'arrivo della prossima versione! Grazie.
Jonathan Wood,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.