Différence entre UNIQUE et VALEURS DISTINCTES

Résolu/Fermé
Daniel - 4 déc. 2020 à 19:49
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 - 6 déc. 2020 à 13:01
Bonjour,

Dans la BDD, pour une colonne, il est possible de choisir entre Unique et Valeurs Distinctes (. Quelle différence y a t-il entre ces 2 choix ?
J'envisage d'utiliser tout simplement cette option pour empêcher d'enregistrer les données si la valeur est déjà dans la colonne. En sachant que ce champs qui servira au contrôle aura toujours une valeur. Cela évitera de passer par une requête select * from table where....

Daniel

Configuration: Windows / Firefox 83.0

3 réponses

Utilisateur anonyme
5 déc. 2020 à 21:11
Bonjour, je suppose que tu parles de cette image ?

Tu peux faire le test par toi-même, tu verras qu'il lance une requête avec un COUNT et un GROUP BY, pour indiquer la quantité pour chaque valeur.

Le résultat :
1
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477
5 déc. 2020 à 21:17
oups, j'ai supposé qu'il s'agissait de la définition d'un champ.
il semble s'agir de la définition d'une requête!
0
Daniel > yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024
5 déc. 2020 à 23:11
C'est bien dans la définition d'un champ. Quand tu vas dans la structure de la table, c'est un choix possible pour chaque champ.
Pour répondre à Pyraah, effectivement, je pouvais faire un test moi même mais comme, je ne souhaitais pas risquer de modifier des données existantes, je préférais poser la question sur un forum. Maintenant, c'était juste pour de la culture personnelle car comme bien souvent quand je ne sais pas ... je ne touche pas. L'interface entre le clavier et le fauteuil fait déjà suffisamment de bêtises comme ça. ;-)
0
Utilisateur anonyme > Daniel
5 déc. 2020 à 23:19
En cas de doute, ne pas hésiter à créer une autre table pour tester des trucs. L'hébergement ne coûtera pas plus cher ;-).
0
Daniel > Utilisateur anonyme
5 déc. 2020 à 23:42
C'est vrai. Tout comme la connaissance qui peut être partagée et que l'on en aura pas moins après.
Bonne continuation, je repars sur mes tests ^^
0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477 > Daniel
6 déc. 2020 à 13:01
ah oui, je vois, cela peut donner l'impression que cela change la définition du champ. comme expliqué par Pyraah, cliquer sur "valeurs distinctes" n'a aucun effet sur la définition d'un champ.
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
4 déc. 2020 à 20:11
Bonjour,

La BDD ... ce n'est pas du PHP ....

Quel moteur de Base de données utilises tu ? Mysql ? MariaDb ? Autre ??

En fonction de ta réponse, je déplacerais la question dans le bon forum


Par contre, je connais les clés (indexes) UNIQUE.. mais pas les DISTINCTES
En général, (au moins en mysql, mariadb, sqlserver ... )
Les indexes UNIQUES permettent de mettre une contrainte (lors de la création d'une table) sur une colonne pour controller que la valeur sera.. unique...
Alors que l'instruction DISCTINCT est, quant à elle, utilisée dans les requêtes SELECT pour "filtrer" le résultat de la recherche.
0
Bonjour,

C'est vrai que BDD c'est pas du php mais comme il était question d'une alternative à une requête php...

Il s'agit d'une base MySQL chez The World by PlanetHoster. Les choix pour les champs sont (Primaire, Unique, Index, Spatial, Texte entier, Valeurs distinctes) en dehors des classiques (Choix de type, Taille/Valeurs, Valeur par défaut, Interclassement, Attributs, Nul, Auto Incrément, Commentaires, Virtualité, Déplacement colonne).
0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477
5 déc. 2020 à 20:57
il me semble qu'il s'agit donc d'une terminologie propre à PlanetHoster, à voir avec eux comment ils traduisent cela techniquement en MySQL.
0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477 > yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024
5 déc. 2020 à 21:02
tu es certain qu'il y a une virgule dans
Unique, Index
?
0
Daniel > yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024
5 déc. 2020 à 23:03
Oui c'est même pas une virgule, c'est des item différents.en colonne. Il y a des virgules car je les ai listés.
0
Daniel > yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024
5 déc. 2020 à 23:02
Oui, c'est possible que ce soit une terminologie propre à eux.
0