|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() david melixInscription : novembre 2009 Messages : 15 ![]() |
Bonsoir,
J'ai créé une colonne referencedans laquelle se trouve lesdites references et leur descriptifs -> erreur de conception je me l'accorde ![]() Je cherche en vain depuis quelques nuits à écrire un script permettant d'éliminer ce texte qui commence toujours par 'Le' (et dont la longueur est variable) Code :
![]() Ou bien c'est moi qui n'ai pas compris ? |
||
|
|
00
|
|
|
#2 | |
![]() ![]() |
Citation:
Code :
SELECT POSITION('Le' IN '1234Le quelque chose') Code :
SELECT LEFT('1234Le quelque chose', POSITION('Le' IN '1234Le quelque chose') - 1) Adapté à ton cas : Code :
SELECT LEFT(reference, POSITION('Le' IN reference) - 1) Bonne nuit !
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
|
10
|
|
|
#3 | ||||
|
Invité de passage
![]() david melixInscription : novembre 2009 Messages : 15 ![]() |
Merci Phil,
Si j'ai bien pigé, ce script selectionne la partie gauche -1 à partir de la chaine "Le" Ca marche au poil ! Code :
Code :
|
||||
|
|
00
|
|
|
#4 | ||
![]() ![]() |
INSERT ajoute des lignes à la table !
Ce que tu veux, je crois que c'est plutôt alimenter ta nouvelle colonne avec la chaîne calculée ? Code :
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||
|
10
|
|
|
#5 |
|
Invité de passage
![]() david melixInscription : novembre 2009 Messages : 15 ![]() |
Oui,
j'ai testé INSERT et je retrouve les resultats dont les yeux ne sont pas en face des trous j'étais en train de batailler avec des jointures quand je t'ai enfin lu ! ![]() Faudra que je te paye une mousse quand je serai de passage à toulouse |
|
|
00
|
|
|
#6 |
![]() ![]() |
Volontiers !
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
10
|
|
|
#7 | ||||
|
Invité de passage
![]() david melixInscription : novembre 2009 Messages : 15 ![]() |
Tout est bien rangé dans l'étable MYSQL
J'ai quand même du aller chercher quelques moutons : Merci Phil pour le chemin ! ![]() La colonne est sensée : soit etre vide, soit contenir une reference SELECT ne me retrouve plus rien !!! J'ai bien gratté et je me retrouve avec un (espace) et un (return) en fin de chaine... Code :
Code :
Par ailleurs, les champs contenant les references n'ont pas cet espace inconnu!! D'ou l'impossibilité de virer le dernier caractere... Alors voici le début de la solution : Est ce que un champ NULL vide contient un caractère invisible et imposé par le programme ? Si oui, quel est il ??? Sinon, comment savoir quel est ce caractère invisible (qui n'est pas 'espace') ??? |
||||
|
|
00
|
|
|
#8 | |||||||
![]() ![]() |
Les valeurs textuelles s'écrivent entre apostrophes, pas entre guillemets.
Citation:
Citation:
Avec la deuxième, en principe oui. Citation:
Donc une colonne (et pas champ !) NULL et une colonne vide sont deux choses différentes : vide = une chaîne vide ''. Si ta référence est purement numérique, essaie cette requête : Code :
Ensuite, s'il n'y a pas de lignes résultat qui ne doivent être vides, tu devrais pouvoir faire ceci : Code :
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|||||||
|
10
|
|
|
#9 | ||||
|
Invité de passage
![]() david melixInscription : novembre 2009 Messages : 15 ![]() |
BOUDI !!!
![]() References pas entièrement numerique : FJ0523 , PQ6539, F1230 , Analysons la situation : Toutes les references contiennent plus d'un caractere. Je cherche à effacer les lignes de celles qui n'en contiennent qu'un ( l'inconnu ) ou pas ! Code :
Alors LENGTH , CHAR, et CHAR_LENGTH ne me donnent pas les memes resultats ??? Code :
NO COmpRenDo NaDa... ![]() Plus je veux faire simple, plus c'est compliqué ! |
||||
|
|
00
|
|
|
#10 | |||||||||
![]() ![]() |
Donc variabilité de la forme des références :
- 1 lettre + 4 chiffres ; - 2 lettres + 4 chiffres ; - autres ? Citation:
Citation:
Citation:
Supprimer de la table "ma_table" les lignes où la colonne aleax_reference est égale au résultat logique de (nombre de caractères de aleax_reference inférieur à 2). Le résultat logique est un booléen qui vaudra 0 ou 1. La bonne requête serait plutôt celle-ci : Code :
Ceci dit, DELETE supprime des lignes, pas le contenu d'une colonne ! Est-ce vraiment ce que tu veux faire ?
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|||||||||
|
10
|
|
|
#11 | |||
|
Invité de passage
![]() david melixInscription : novembre 2009 Messages : 15 ![]() |
Citation:
![]() Citation:
Citation:
Phil, je te promet que je reviendrai bientot t'embeter avec de nouvelles questions sur les trigger dont je n'ai absolument pas abordé le sujet ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com