Les numéros de ligne dans le résultat de la requête à l'aide de Microsoft Access
J'utilise toujours cette requête dans sql server pour obtenir le numéro de Ligne dans une table:
SELECT *
FROM (SELECT *,
Row_number()
OVER(
ORDER BY [myidentitycolumn]) RowID
FROM mytable) sub
WHERE rowid = 15
Maintenant je travaille dans Access 2010 et cela semble ne pas fonctionner. Il y a tout de remplacement pour cette requête dans Access?
OriginalL'auteur Arashdn | 2013-06-24
Vous devez vous connecter pour publier un commentaire.
MS-Access ne prend pas en charge la fonction ROW_NUMBER(). TOP 1:
Si vous avez besoin de le 15e de ligne - MS-Access n'a pas de simple, intégrée, pour ce faire. Vous pouvez simuler le rownumber en utilisant inverse imbriquée de la commande pour obtenir ceci:
vous pouvez certainement essayer un de plus "simple" approche à l'aide de DCount, mais que le commentaire dit, cela ne fonctionnera pas efficacement... Et de l'Accès, bien que populaire, est plus un outil de bureau et n'est pas destiné à être aussi complet comme une véritable solution de serveur.
la méthode que vous décrivez pour avoir le 15e aussi du travail pour les dates? Je vous remercie.
certes, tout ce qui peut être triée par ORDRE EN œuvre, y compris les dates.
OriginalL'auteur PinnyM
Une autre façon d'attribuer un numéro de ligne dans une requête consiste à utiliser le
DCount
fonction.OriginalL'auteur Bobort
J'avais besoin de la meilleure x résultats de points par équipe.
Classement ne résout pas ce problème quand il y a des résultats à égalité de points.
J'ai donc besoin d'un
recordnumber
J'ai fait une fonction VBA dans Access pour créer une
recordnumber
qui rétablit sur le changement d'ID.Vous avez une requête à cette requête avec où
recordnumber <= x
pour obtenir les points par équipe.NB d'Accès pour l'enregistrement, le numéro de
Qui n'est pas ce que je pensais qui allait se passer.
Résolu ce problème en utilisant une table temporaire et l'enregistrement de la
recordnumbers
et des clés ou un champ supplémentaire dans la table.Il utilise 3 module niveau des variables à retenir entre les appels
OriginalL'auteur Jack Schneider
Si c'est une vieille question, ce qui a fonctionné pour moi, mais je n'ai jamais testé son efficacité...
Certains avantages de cette méthode:
RowID
est calculé sur sa valeur réelle et ceux qui le sont moins.Number
,String
ouDate
).Réflexions
Si cela fonctionne avec pratiquement n'importe quel type de données, je dois souligner que, pour certains, c' peut créer d'autres problèmes. Par exemple, avec des cordes, pensez à:
Si je devais insérer:
bba Boar
, puis leCanary
RowID
va changer...OriginalL'auteur Paul
Je pourrais être en retard. Il suffit d'ajouter un nouveau champ ID dans la table de type Numéroauto. Cela va générer des Identifiants uniques et peuvent utiliser l'Accès trop
OriginalL'auteur Renju