Bonjour,
je sèche sur un problème en apparence simple:
je dispose d'une table de comptes simplifiée comme suit:
Compte
- Code (char 20)
- Type (char 10)
Type peut être vide ou contenir la chaine "collectif" ou encore "courant"
Ma requete semble simple, je veux récupérer tous les comptes dont le code ne commence pas par un code de collectif + les collectifs eux meme.
Exemple:
code type
'411TETARD' 'courant'
'411MARTIN' 'courant'
'482803' ''
'411' 'collectif'
=> la requête devrait me retourner
'482803' car aucun collectif n'en est la racine
'411' car c'est un collectif
J'ai commencer par faire la requête suivante qui marche très bien mais suppose que tous les collectifs ont un code de longueur unique (ici 3), or ce n'est pas le cas, un collectif pourra contenir 3 caractère (ex: 411) et un autre 4 (ex: 6008):
J'espère ne pas avoir été trop brouillon, merci à tous
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 SELECT COMPTE, LEFT(COMPTE,3) AS Caracteres FROM COMPTES WHERE Caractere NOT IN (SELECT COMPTE FROM COMPTES WHERE TYPE_COMPTE = 'Collectif') OR TYPE_COMPTE = 'Collectif')![]()
Partager