Comment puis-je obtenir la partie inférieure de 50% d'une requête select en SQL server?
Dans SQL server, je peux dire:
Select top 50 percent
Comment puis-je dire du fond de 50 pour cent?
MODIFIER - pour l'amour d'une question intéressante, si nous supposons qu'il dispose d'une table avec une clé primaire, mais veut que la partie inférieure de 50% commandés dans croissant clé primaire de l'ordre. Quel serait le moyen le plus efficace de parvenir à ce que les?
Vous devez vous connecter pour publier un commentaire.
pourquoi ne pas simplement changer l'ordre de tri et de retenir les meilleurs. Ne serait-ce pas faire la même chose?
Votre question, comme dit est techniquement pas de sens, parce que, sans une clause order by, l'ordre dans lequel vos données sont renvoyées n'est pas défini (dans la pratique, la plupart des bases de données sera de retour dans la clé primaire de l'ordre, ou si vous n'avez pas de clé primaire, puis dans l'ordre d'insertion, mais qui n'est pas garanti)
En supposant toutefois vous avez une clause order by, mais n'ont tout simplement pas compris cela, n'aurait tout simplement utiliser des DESC au lieu de NCP.
Une autre option pourrait être:
Vous pouvez ensuite modifier dynamiquement le partage de vos données comme vous le souhaitez.
Check this out.
Je ne sais pas si cela fonctionnerait:
Et je suis sûr que quelque chose comme ce serait OK aussi:
Il suffit de vérifier la syntaxe, comme je commence seulement à apprendre le SQL et ne peut pas former de corriger les requêtes sans avoir à modifier la un millions de fois en premier 😉
Ne fonctionne pas correctement lorsque le tableau contient un nombre impair de dossiers. celui du milieu dans les deux ensembles de résultats.
ce, d'autre part fonctionne très bien
upvote pour mingos 🙂
downvote pour user151323 🙁