J'ai créé une vue dans MySQL. Mais maintenant, mon exigence est de créer une colonne d'identité dans cette vue qui devrait être une incrémentation automatique.
Ma vue actuelle est la suivante: - p> maintenant je veux une colonne d'identification colonne qui devrait être auto_incrimentation dans la nature. Comment devrais-je faire ça?
Merci d'avance. P> p>
4 Réponses :
Vous pouvez le simuler avec quelque chose comme celui-ci dans votre sélection:
SELECT @rownum:=@rownum+1 AS rownum, dummy.* FROM (SELECT @rownum:=0) r, dummy;
Remarque: cela énumérera toutes les lignes de votre résultatsset, indépendante de l'ordre de votre requête réelle!
Merci pour une réponse rapide. Mais quand je crée la vue MySQL donne une erreur: - La sélection de la vue contient une variable ou un paramètre.
Affichage de la base de données est une copie miroir de nos données de notre base de données. En réel, cela n'existe pas. Il a la même structure que la table principale p>
Sa structure ne peut pas changer p>
Merci lokesh. Pouvons-nous créer une fonction pour faire cela?
Sélectionnez @ROWNUM: = @ ROWNUM + 1 'Autoid', M.Mediathumbnilurl, Q.SurveyID à partir de (Sélectionnez @ROWNUM: = 0) R, MEDIA M Joindre la question Q sur M.MediAutoid = Q.BackgroundImageId; p>
Vous pouvez utiliser la fonction "UIID ()" qui vous fournira un identifiant unique (alphanumérique) identifié. p>
Vérifiez ceci: https://stackoverflow.com/a/45963661/6083044 p>
Il y a un inconvénient majeur avec cette solution: les UUIDS changent à chaque fois que vous accédez à la vue. (BTW, ne répondez pas aux doublons des questions avec la même réponse, le drapeau / voter pour fermer les nouvelles questions en tant que duplicata de la plus ancienne.)
Au fait, je pense que cette question est une duplication: Stackoverflow.com/Questtions/1964811/ROW-RANK-IN-A-MYSQL-Voir / ...
Réponse courte: Non. Stackoverflow.com/Questtions/2808759/...
Dupliquer de Stackoverflow.com/Questtions/2808759/...