Bien nommer ses vues
Vous avez la possibilité dans une base de données d’ajouter des vues filtrées.
Il existe deux types de cas quand cela est possible :
- Une vue globale
- Une vue filtrée
Nommer ses vues globales
Par défaut, vous démarrez toujours une vue complète de vos données. Normalement, il n’y a pas besoin de nommer cette vue, mais certains outils de base de données No-Code permettent de nommer cette vue. Il s’agit donc de la nommer et de ne pas laisser le nom par défaut.
MÉTHODOLOGIE | DESCRIPTION | BONNE PRATIQUE | MAUVAISE PRATIQUE |
---|---|---|---|
On utilise l’abréviation vw | vw permet d’identifier une vue. | vw_global_freelance vw_global_team_member | all_data |
On utilise terme global | Le terme global permet de comprendre qu’il s’agit de votre vue complète avec toutes les données et que cette vue est non filtrée. | vw_global_freelance vw_global_team_member | vw_freelance |
On y ajoute le nom de la table | En ajoutant le nom de la table, cela permet de comprendre | vw_global_freelance vw_global_team_member | vw_global |
Utiliser l’anglais | Les termes à utiliser sont en anglais. | vw_global_freelance vw_global_team_member | vw_global_equipe |
Nommer ses vues filtrées
Pour des raisons de pragmatisme, une vue filtrée s’entend à la fois sur la fonctionnalité de filtre que sur la fonctionnalité de tri.
L’objectif du bien nommer ses vues filtrées reste encore ici d’avoir la meilleure lisibilité possible.
MÉTHODOLOGIE | DESCRIPTION | BONNE PRATIQUE | MAUVAISE PRATIQUE |
---|---|---|---|
On utilise l’abréviation vw et on ajoute le nom de la table | vw permet d’identifier une view. | vw_ | Grid |
On y ajoute le nom de la table | En ajoutant le nom de la table dans laquelle la vue existe. | vw_rugby_player | Grid |
On donne un nom au(x) filtre(s) | cf. explications détaillées plus bas | cf. explications détaillées plus bas | Grid |
Utiliser l’anglais et les minuscules | Les termes à utiliser sont en anglais. | vw_rugby_player_age | vw_age_joueur-rugby |
Utiliser un underscore _ plutôt d’un espace ou un tiret | Les termes à utiliser sont en anglais. | vw_rugby_player_age | vw-rugby-player-age |
Objectif :
- Plus clair et lisible possible
- Le court possible
Théorie
TIP
Cas numéro 1 : [ETAT] vw_table_field1
/ vw_table_field1_field2
Cas numéro 2 : [ETAT] vw_table_value [filter 1, filter 2, filter 3, DESC,…]
Ecriture : [ETAT] vw_table_field/value [field_1, field_2, filter 1, filter 2, BY filter 1, filter 2, ASC/DESC]
Cas numéro 1
On cherche à obtenir dans la table rugby_player tous les matchs de rugby du Stade Toulousain où le nombre d’essais est supérieur à 5
WHAT | TYPE | NAMING | COMMENT |
---|---|---|---|
rugby_player | TABLE | rugby_player | |
Stade Toulousain | FILTER | Stade Toulousain | |
Supérieur 5 essais | FILTER | > 5 essais | Possibilité de mettre dans le filtre > , >= , < , <= |
Naming view : vw_rugby_player [> 5 essais, Stade Toulousain]
Cas numéro 2
On cherche à obtenir dans la table rugby_player
tous les matchs d’Antoine Dupont (joueur de rugby), du plus récent au plus ancien, qu’il a effectué en Top 14 avec le Stade Toulousain.
WHAT | TYPE | NAMING | COMMENT |
---|---|---|---|
rugby_player | TABLE | rugby_player | |
Antoine Dupont | VALUE | Antoine Dupont | Lorsqu’on filtre sur une valeur, il faut écrire la valeur de la même manière qu’elle est renseignée dans le champ. |
Plus récent au plus ancien | SORT | DESC | cf. mémo |
Top 14 | FILTER | Top 14 | |
Stade Toulousain | FILTER | Stade Toulousain | |
match | FIELD | match_match |
Naming view : vw_rugby_player_Antoine Dupont [match_match, Top 14, Stade Toulousain, DESC]
TIP
Comment écrire un filtre ?** Top 14 / top14 / top 14 / top_14 ? ⇒ Cela doit correspondre à la manière dont vous l’avez écrit en tant que valeur dans votre table. L’objectif est de rester cohérent le plus possible dans l’écriture.
TIP
Comment différencier en lecture une valeur d’un attribut ?
Cas 1 : Il y a 1 seul terme Ex. :*_ Dans la table club, on a un attribut name
et une valeur UBB
ou ubb
_(N.B. : l’UBB est un club de rugby bordelais)*. Ce qui pourrait donner vw_club_name
et vw_club_UBB
ou vw_club_ubb
. Ici pas de possibilité de faire la distinction, mais au final cela ne nuit pas à la compréhension ni la lisibilité ce qui est l’objectif.
Cas 2 : Il y a 2 termes minimum Un attribut avec deux termes est identifié avec un underscore _
alors qu’une valeur avec plusieurs termes est souvent nommée avec des espaces, voire des majuscules (ex. : name_player
(champ) ≠ Antoine Dupont
(valeur))
A retenir : ce qui compte ici est d’être pragmatique et d’assurer au maximum la lisibilité et la cohérence.
— Cas numéro 3
On cherche à obtenir les matchs dans lesquels les joueurs Antoine Dupont et Anthony Jelonch ont joué ensemble.
WHAT | TYPE | NAMING |
---|---|---|
rugby_player | TABLE | rugby_player |
Antoine Dupont | VALUE | Antoine Dupont |
Anthony Jelonch | VALUE | Anthony Jelonch |
Top 14 | FILTER | Top 14 |
Matchs | FIELD | match_match |
Naming view:
vw_rugby_player_Antoine Dupont AND Anthony Jelonch [match_match, Top 14]
INFO
On utilise les termes AND
et OR
pour les valeurs.
— Cas numéro 4
On cherche à obtenir dans la table rugby_player tous les joueurs du top 14 sur l’année 2024 groupés par équipe.
WHAT | TYPE | NAMING |
---|---|---|
rugby_player | TABLE | rugby_player |
team | GROUP | BY |
Année 2024 | VALUE | 2024 |
Top 14 | FILTER | top14 |
Naming view : **vw_rugby_player [top14, 2024 BY team]**
Le BY est à la fin parce que c’est meilleur en termes de lisibilité (éviter : vw_rugby_player [BY team, Top 14, 2024]
qui ne veut pas dire la même chose)
— Mémo
Les filtres particuliers comme SORT, GROUP BY et BOOLÉEN sont notés de cette manière et dans cet ordre : vw_table_field/value [filter 1, filter 2, BY filter, ASC/DESC, TRUE/FALSE]
FILTER | DESCRIPTION | NAMING | ORDER |
---|---|---|---|
GROUP BY | Possibilité de grouper via une valeur / champ | BY | 1 |
ASCENDANT | 0 → 9 A → Z | ASC | 2 |
DESCENDANT | 9 → 0 Z → A | DESC | 2 |
BOOLÉEN | Des valeurs qui sont true, soit false. | TRUE FALSE | 3 |
Cas où la vue exprime un ETAT
Si la vue doit exprimer un “état” comme par exemple :
- Une vue filtrée qui recense les facture en attente de paiement ;
- Une vue filtrée qui recense tous les posts ayant été posté ;
- Une vue filtrée qui recense les tâches qui n’ont pas encore été effectué ;
- …
La méthodologie Predict_Table propose d’écrire la vue de cette manière en mettant l’état de la vue en premier de cette manière : [ETAT] vw_table_field/value
A noter :
- le statut d’une vue est optionnel. Toutes les vues n’ont pas forcément pour obligation de donner un statut.
- La vue vw_global_tablename ne possède pas d’état puisqu’elle ne possède pas de filtres.
- L’état est toujours noté en majuscule. Le choix de la langue se fait en fonction de l’utilisateur final.
CAS | ECRITURE |
---|---|
Une vue filtrée qui recense toutes les factures en attente de paiement | [EN ATTENTE DE PAIEMENT] vw_project |
Une vue filtrée qui recenses toutes les factures de 2024 | [FACTURES] vw_project [2024] |
Une vue filtrée qui recense tous les posts ayant été posté sur linkedin par Jean | [PUBLIÉ] vw_post [linkedin BY Jean] |
Une vue filtrée qui recense les tâches qui n’ont pas encore été effectué au mois de mars par ordre de priorité | [TODO] vw_project [mars BY priority] |