transformer char en int dans une requete sql

Invité
Invité n'ayant pas de compte PHPfrance

13 juin 2008, 15:55

Bonjour,

J'ai un souci dans une de mes table j'ai la clé primaire qui est au format char(alors que ce sont des chiffres). Je voudrai lorsque je fais ma requête ressortir le plus grand chiffre, mais vu qu'il est au format char, cela ne fonctionne pas. Y a t il un moyen de changer le format et de faire le max sur se format changer.

Je sais pas si j'ai été clair

Merci

Eléphant du PHP | 174 Messages

13 juin 2008, 16:15

Bonjour.

Je t'invite à regarder la documentation de la fonction intval :

http://fr.php.net/manual/fr/function.intval.php

Sinon tu peux aussi changer le type dans la base de données, en particulier pour spécifier une clé primaire en int auto_increment puisque cela semble, à première vue, être adapté à ton cas.

Bonne continuation et bonne progra !
"Il vaut mieux avoir du luxe dans ses sentiments que sur ses habits, je ne crains, moi, le mépris de personne" Honoré De Balzac.
"On s'étonne trop de ce que l'on voit rarement et trop peu de ce que l'on voit chaque jour" Mme de Genlis
"L'absence diminue les médiocres passions et augmente les grandes comme le vent éteint les bougies et allume le feu" La RocheFoucauld
"People have hope because they can't see Death standing behind them" (anonymous)
"Of all the things I've lost, I miss my brain the most" (from a fanfic)

Invité
Invité n'ayant pas de compte PHPfrance

13 juin 2008, 16:28

ok merci, mais il n'y aurait pas se genre se fonction qui existe sous sql directement ?

merci

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

13 juin 2008, 18:00

ok merci, mais il n'y aurait pas se genre se fonction qui existe sous sql directement ?

merci
Tu parles de la fonction documentation ? Si il y en a une !
:arrow: http://dev.mysql.com/doc/refman/5.0/fr/index.html

Un secret de développateur professionnel : il y a une documentation pour tous les langages et outils de la Terre. Mais ne le répète pas sinon ce forum perdra 95% de son activité et on ne gagnera plus de sous avec la pub :P

Ceci étant dit, cette remarque est quand même loin d'être idiote :
Sinon tu peux aussi changer le type dans la base de données, en particulier pour spécifier une clé primaire en int auto_increment puisque cela semble, à première vue, être adapté à ton cas.
Quel intérêt de créer une colonne VARCHAR, pour y stocker un nombre, et de transformer la chaîne de caractère en nombre ?

Eléphant du PHP | 422 Messages

14 juin 2008, 12:33

Quel intérêt de créer une colonne VARCHAR, pour y stocker un nombre, et de transformer la chaîne de caractère en nombre ?
Quand on récupère des données en provenance de l'INSEE, de l'OCDE, d'Eurostat, ... il arrive souvent que les valeurs absentes soient remplacées par un code non numérique (valeur couverte par le secret statistique, valeur pas encore connue, valeur inexistante, ...).
Et dans ce cas, on ne peut pas uniquement se contenter d'avoir soit un champ numérique avec soit un nombre, soit une valeur nulle.

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

14 juin 2008, 13:55

On parle donc de cas très particuliers, mais est-ce que c'en est un dans le cas présent ?

On voit quand même passer ici plus de mauvaises utilisations de type de données que de gestion de ce type de cas :)

Invité
Invité n'ayant pas de compte PHPfrance

01 juil. 2008, 16:16

il se trouve que ce sont des informations qui sont en effet téléchargé(toute la table des codes postaux français)