Je dois être en mesure de trouver l'enregistrement suivant et précédent à partir d'un identifiant incrémental non auto.MYSQL Suivant Enregistrement précédent
L'ordre de tri correct à partir de la base de données utilise cet ordre par la déclaration:
Les travaux ci-dessous seulement pour lister tous les résultats d'une recherche. ORDER BY longueur (general.blockid), general.blockid, length (general.plotid), general.plotid
La page qui doit connaître l'enregistrement suivant et précédent contient l'identifiant/varchar unique dans l'URL. simplement? id = 100_1A
dans l'url exemple variables ci-dessus,
100_1A est dans la db comme blockplot
100 est la dans la db comme BlockID
1A est dans le datbase comme plotid
Lorsque je suis sur le dossier 100_1A, l'enregistrement suivant devrait être 100_1B. L'enregistrement précédent à 100_1a devrait être 99_6C
Mon problème est que comment puis-je interroger la base de données pour le prochain enregistrement lorsque je ne connais pas l'ordre jusqu'à ce qu'il soit trié?
L'ordre de tri que j'ai saisi est un tri fonctionnel pour la page de résultats de recherche.
Lorsqu'un utilisateur clique pour entrer dans un enregistrement spécifique, l'identifiant est transmis au ur le détail view.php? Id = 100_1a
Sur la page vue que je dois prendre 100_1A et utiliser le même sorte de voir ce dossier est avant et après 100_1A
la table est énorme autour de 14 000 enregistrements. et sur quoi je travaille maintenant, je voudrais juste le prochain album après et celui précédent. Je vais vous donner quelques explications et voir si je peux le faire fonctionner. –
Lorsque vous dites créer une vue pour stocker le row_number, que voulez-vous dire? –
Wiew a certaines restrictions telles que ne permet pas de variable dans la requête de sélection. Le remplacement approprié sera créer un tableau récapitulatif qui contient le numéro de ligne + l'ID non-entier – ajreal