|
Le meilleur type de données pour une échelle salariale de base en SQL dépend de plusieurs facteurs, mais en général, vous souhaiterez utiliser un format numérique. type qui autorise les valeurs décimales. Voici une liste des choix courants et pourquoi :
* `DECIMAL(p, s)` ou `NUMERIC(p, s)` : Ce sont les options les plus précises. « p » représente le nombre total de chiffres (précision) et « s » représente le nombre de chiffres après la virgule (échelle). Par exemple, « DECIMAL(10, 2) » autorise des nombres allant jusqu'à 99999999,99. C'est un bon choix si vous devez stocker des montants de paie très précis et que vous connaissez à l'avance la valeur maximale.
* `FLOAT` ou `DOUBLE PRECISION` : Ce sont des types à virgule flottante qui peuvent stocker une plus large plage de nombres. Cependant, ils sont approximatifs, ce qui signifie qu'ils peuvent ne pas stocker la valeur exacte que vous avez saisie en raison de la manière dont les nombres à virgule flottante sont représentés en binaire. Utilisez-les uniquement si vous n'avez pas besoin de valeurs extrêmement précises (par exemple, si de petites erreurs d'arrondi sont acceptables).
* `INTEGER` ou `INT` : Évitez cela à moins que tous vos salaires ne soient des nombres entiers. Vous perdrez en précision si vous avez des centimes.
Recommandation :
Pour la plupart des applications de paie, « DECIMAL(p, s) » est le type de données recommandé. Choisissez des valeurs appropriées pour « p » et « s » en fonction de la fourchette probable de salaires et de la précision requise. Par exemple:
* `DECIMAL(10, 2)` suffirait pour la plupart des échelles salariales, permettant des valeurs allant jusqu'à 9 999 999,99.
* Si vous prévoyez des salaires exceptionnellement élevés, vous pouvez augmenter « p ».
N'oubliez pas de prendre en compte la croissance future et les salaires potentiellement plus élevés lorsque vous choisissez « p ». Il est préférable de choisir un « p » légèrement plus grand que ce qui est absolument nécessaire pour éviter des problèmes de troncature de données à l'avenir. L'utilisation de « s=2 » est généralement suffisante pour les valeurs monétaires dans la plupart des pays.
|