Mysql
 sql >> Base de données >  >> RDS >> Mysql

Générer un identifiant long unique pour une vue dans MySql

MISE À JOUR :Lorsque vous insistez pour qu'il s'agisse d'un nombre, créez votre vue comme ceci :

SELECT
(@rownum:[email protected] + 1) AS rownumber,
yourTable.*
FROM
yourTable
, (SELECT @rownum:=0) r

Mais c'est vraiment ça - plus d'autres possibilités. Convertir le numéro de ligne en long comme je l'ai dit dans les commentaires, si ça doit vraiment, vraiment être long .

Alternativement dans une procédure :

DELIMITER $$
CREATE PROCEDURE selectFromWhatever()
BEGIN
SELECT
(@rownum:[email protected] + 1) AS rownumber,
yourTable.*
FROM
yourTable
, (SELECT @rownum:=0) r;
END $$
DELIMITER ;

Ensuite, obtenez le résultat avec

CALL selectFromWhatever()

Réponse originale :

Du manuel MySQL :

UUID()

Une autre façon serait d'utiliser CONCAT() pour créer votre identifiant unique.

SELECT CONCAT(PRINCIPAL_ID, '-', GROUP_ID) AS myUniqueID
FROM yourTable