BESOIN DAIDE sur ue requete sql svp :cry:

BESOIN DAIDE sur ue requete sql svp :cry: - Windows & Software

Marsh Posté le 25-04-2002 à 11:14:38    

donc voila ma requete sql, il s'agit d'une BD contenant l'annuaire si on veut. je dois filtrer les entreprises (ce qui est fait dans cette requete, les particuliers n'ayant pas de rubrique). ensuite comme une entreprise peut avoir deux noms differents a la meme adresse, pour eviter ces doublons il faudrait que j'inclue un passage disant " si la rue et le numero sont les memes que un enregistrement précédant, on ne prends pas"
 
 
pouvez vous m'aider ? :cry:
 
SELECT DISTINCT [nom], [rue], [numero]
FROM welkenraedt
WHERE rubrique<>"";


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 11:14:38   

Reply

Marsh Posté le 25-04-2002 à 11:25:45    

brunocremer a écrit a écrit :

donc voila ma requete sql, il s'agit d'une BD contenant l'annuaire si on veut. je dois filtrer les entreprises (ce qui est fait dans cette requete, les particuliers n'ayant pas de rubrique). ensuite comme une entreprise peut avoir deux noms differents a la meme adresse, pour eviter ces doublons il faudrait que j'inclue un passage disant " si la rue et le numero sont les memes que un enregistrement précédant, on ne prends pas"
 
 
pouvez vous m'aider ? :cry:
 
SELECT DISTINCT [nom], [rue], [numero]
FROM welkenraedt
WHERE rubrique<>"";  




---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 11:32:22    

brunocremer a écrit a écrit :

donc voila ma requete sql, il s'agit d'une BD contenant l'annuaire si on veut. je dois filtrer les entreprises (ce qui est fait dans cette requete, les particuliers n'ayant pas de rubrique). ensuite comme une entreprise peut avoir deux noms differents a la meme adresse, pour eviter ces doublons il faudrait que j'inclue un passage disant " si la rue et le numero sont les memes que un enregistrement précédant, on ne prends pas"
 
 
pouvez vous m'aider ? :cry:
 
SELECT DISTINCT [nom], [rue], [numero]
FROM welkenraedt
WHERE rubrique<>"";  




---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 11:35:51    

Je pourrais répondre à la question ( si je la lisais ) mais je pense que ton poste serait mieux placé dans prog


---------------
La bave du crapaud n'empèche pas la caravane de passer .
Reply

Marsh Posté le 25-04-2002 à 11:50:28    

lord ii a écrit a écrit :

Je pourrais répondre à la question ( si je la lisais ) mais je pense que ton poste serait mieux placé dans prog  




 
déplacé  
a voir stp :cry:


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 12:03:55    

faut faire une requete imbriquée
 
un selecte dans un select quoi !

Reply

Marsh Posté le 25-04-2002 à 12:34:20    

lamatrice a écrit a écrit :

faut faire une requete imbriquée
 
un selecte dans un select quoi !  




 
oui mais je vois plus du tout comment ca v a :/
tu peux maider ?


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 12:36:18    

Select  [nom] , [rue]
from table
where  cheplus<>"" and (select  bbal bal where balabal ) ;
c est ça une sous imbriqué


---------------
Moards : Challenge Everything. - En fait l'idée c est que t arrives comme un porc à l entrée en glisse ! Là tu te jettes comme un porc ! Et là tu sors comme un goret
Reply

Marsh Posté le 25-04-2002 à 13:55:38    

poisse a écrit a écrit :

Select  [nom] , [rue]
from table
where  cheplus<>"" and (select  bbal bal where balabal ) ;
c est ça une sous imbriqué  




 
oui mais moi je ne dois aps additionner une categorie je dois retrancher certain truc de ma sekection!
 
 
donc je selectionne nom, rue, numero des entreprises
puis je dois enlever les enregistrements qui ont meme numero et meme rue( pour eviter d'envoyer trois lettres a la meme entreprise dans 3 buro differents :D
 
tu as compris?
je sais ke on peut faire un EXCEPT (mais ca ne marche pas en acces et je ne sais plus la soluce :/)
 
 
aidez moi :cry:


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 14:15:01    

brunocremer a écrit a écrit :

donc voila ma requete sql, il s'agit d'une BD contenant l'annuaire si on veut. je dois filtrer les entreprises (ce qui est fait dans cette requete, les particuliers n'ayant pas de rubrique). ensuite comme une entreprise peut avoir deux noms differents a la meme adresse, pour eviter ces doublons il faudrait que j'inclue un passage disant " si la rue et le numero sont les memes que un enregistrement précédant, on ne prends pas"
 
 
pouvez vous m'aider ? :cry:
 
SELECT DISTINCT [nom], [rue], [numero]
FROM welkenraedt
WHERE rubrique<>"";  




---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 14:15:01   

Reply

Marsh Posté le 25-04-2002 à 14:43:41    

L'équivalent d'EXCEPT sous ACCESS est "MINUS" mais je ne suis pas sur que ça résolve ton problème !
 
Et sinon pkoi DISTINCT ne marche pas ?

 

[jfdsdjhfuetppo]--Message édité par socratexte le 25-04-2002 à 14:47:50--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 25-04-2002 à 15:06:23    

socratexte a écrit a écrit :

L'équivalent d'EXCEPT sous ACCESS est "MINUS" mais je ne suis pas sur que ça résolve ton problème !
 
Et sinon pkoi DISTINCT ne marche pas ?  
 
 




 
il fo k jelimine ceux ki ont rue et numero en commun!
sinon si je trie par rue---> une seule entreprise dune rue recoit u courrier
si je trie par numero--->il ny a qu'une fois la maison "3" qui recoit u courrier sur toute la belgique


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 15:17:40    

Ta clé primaire est le [nom] de l'entreprise ?
si c le cas, je te conseille de plutot mettre un identifiant ( chiffre ) en clé primaire pour chaque entreprise !
comme ça le problème ne se pose plus !

Reply

Marsh Posté le 25-04-2002 à 15:25:53    

socratexte a écrit a écrit :

Ta clé primaire est le [nom] de l'entreprise ?
si c le cas, je te conseille de plutot mettre un identifiant ( chiffre ) en clé primaire pour chaque entreprise !
comme ça le problème ne se pose plus !  




 
la clé primaire est un nombre
mais le probleme se pose vu ke dans la base de donnée l'entreprise est parfois reprise plusieurs fois a la meme adresse sil y a different service!


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 15:31:21    

:heink:  
 
Pour t'aider il m'aurait fallut soir la BD soit au moins le MCD ou quelque chose ressemblant ! parce que là... ça semble se croiser dans tous les sens :D
 
je regarde quand meme :)

Reply

Marsh Posté le 25-04-2002 à 15:39:22    

socratexte a écrit a écrit :

:heink:  
 
Pour t'aider il m'aurait fallut soir la BD soit au moins le MCD ou quelque chose ressemblant ! parce que là... ça semble se croiser dans tous les sens :D
 
je regarde quand meme :)  




 
je te file un exemple
 
 
 
 
PHONE LINE NAME STREET NUM ZIP CITY INFO PRO
087/88.35.57 FAX ABC PAPETERIE KESSLER M SPRL Rue Lamberts 3 4840 Welkenraedt   [016133] PAPETERIES, LIBRAIRIES- PAPETERIES (DETAIL)
087/88.13.41   ABC.SPRL.PAPETERIE Rue Lamberts 3 4840 Welkenraedt   [016133] PAPETERIES, LIBRAIRIES- PAPETERIES (DETAIL)
087/88.11.42   ABRASSART - VANHOUDT/M Rue Lancaumont 16 4840 Welkenraedt    
087/88.11.27   ACADEMIE DE MUSIQUE Rue L Brecht 1 4840 Welkenraedt    
087/89.80.11   ACADEMIE DE MUSIQUE Rue L Brecht 1 4840 Welkenraedt    
087/88.03.55   ACAMPO ERNENS G Rue Nishaye 44 4841 Welkenraedt    
087/44.51.01 FAX ACIS ASBL MAISON REPOS BELOEIL Chaussee de Liege 47 4841 Welkenraedt    
087/89.05.05   A.C.P. SERVICES SPRL Place des Combattants 16 4840 Welkenraedt   [014312] PRETS PERSONNELS ET HYPOTHECAIRES
087/89.05.06 FAX A.C.P. SERVICES SPRL Place des Combattants 16 4840 Welkenraedt    
087/89.97.71 FAX ACTION SPORTS,FAX Route Charlemagne 276 4841 Welkenraedt    
087/89.01.24   ACTION SPORTS SPRL Allee des Cerisiers 25 4840 Welkenraedt    
087/89.97.70   ACTION SPORTS SPRL Route Charlemagne 276 4841 Welkenraedt


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 15:40:55    

et regarde l'academie rue brecht...
 
2x la meme entreprise mais elle sy retrouve deux fois car il y a deux service a la meme adresse
donc il fo dire a acces de prendre toutes les entreprises SAUF celle ou il y une autre entreprise qui a la meme RUE ET le meme NUMERO
 
tu as compris la ? :hello:


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 16:07:27    

Première solution :
 
SELECT  DISTINCT([Nom]), [rue], [numero]
FROM welkenraedt  
WHERE rubrique<>"";
 
( ajoute les parenthèses autour du Nom, elles sont importantes )
 
Mais je crois qu'on a encore un pb avec  
ABC PAPETERIE KESSLER M SPRL Rue Lamberts 3 4840 Welkenraedt
et
ABC.SPRL.PAPETERIE Rue Lamberts 3 4840 Welkenraedt
 
donc je vais voir pour ajouter la rue !
 
mais le meilleur conseil que je peux te donner et de normaliser ta BD ( la refaire quoi :) )

Reply

Marsh Posté le 25-04-2002 à 16:22:46    

socratexte a écrit a écrit :

Première solution :
 
SELECT  DISTINCT([Nom]), [rue], [numero]
FROM welkenraedt  
WHERE rubrique<>"";
 
( ajoute les parenthèses autour du Nom, elles sont importantes )
 
Mais je crois qu'on a encore un pb avec  
ABC PAPETERIE KESSLER M SPRL Rue Lamberts 3 4840 Welkenraedt
et
ABC.SPRL.PAPETERIE Rue Lamberts 3 4840 Welkenraedt
 
donc je vais voir pour ajouter la rue !
 
mais le meilleur conseil que je peux te donner et de normaliser ta BD ( la refaire quoi :) )  




 
le distinct ainsi il fait quoi :??:
 
car juste sur le nom ca va pas
juste sur la rue non plus :/
numero encore moins :/
 
donc tu le fais sur quoi ton distinct la ?


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 16:58:19    

brunocremer a écrit a écrit :

 
 
le distinct ainsi il fait quoi :??:
 
car juste sur le nom ca va pas
juste sur la rue non plus :/
numero encore moins :/
 
donc tu le fais sur quoi ton distinct la ?  




---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 17:03:01    

brunocremer a écrit a écrit :

 
 
le distinct ainsi il fait quoi :??:
 
car juste sur le nom ca va pas
juste sur la rue non plus :/
numero encore moins :/
 
donc tu le fais sur quoi ton distinct la ?  




---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 17:04:41    

hummm je pense qu on la vue ....
mais bon ça te fait un up gratuit là


---------------
Moards : Challenge Everything. - En fait l'idée c est que t arrives comme un porc à l entrée en glisse ! Là tu te jettes comme un porc ! Et là tu sors comme un goret
Reply

Marsh Posté le 25-04-2002 à 17:06:09    

poisse a écrit a écrit :

hummm je pense qu on la vue ....
mais bon ça te fait un up gratuit là  




:)


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 17:08:03    

j'ai fait vite fait quelque tests, et il s'avère que le DISTINCT à la fois sur le nom et à la fois sur la rue est suffisant !
Le problème est qu'il ne l'accepte pas sous Access :/

Reply

Marsh Posté le 25-04-2002 à 17:19:14    

socratexte a écrit a écrit :

j'ai fait vite fait quelque tests, et il s'avère que le DISTINCT à la fois sur le nom et à la fois sur la rue est suffisant !
Le problème est qu'il ne l'accepte pas sous Access :/  




 
:cry:
je fais koi :??:


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 17:21:54    

Passer à Oracle ?... PHP MySQL ?!... non bon je regarde comment contourner le problème sous access ! mais je te garantie rien !

Reply

Marsh Posté le 25-04-2002 à 17:23:01    

socratexte a écrit a écrit :

Passer à Oracle ?... PHP MySQL ?!... non bon je regarde comment contourner le problème sous access ! mais je te garantie rien !  




 
ok merci :)
 
petite idée... avec un NOT IN () ca pourrait pas aller?
je dis ca pour t'aider :)


---------------
[:pentier]  
Reply

Marsh Posté le 25-04-2002 à 17:26:20    

le NOT IN() te les supprimera tous de ta première Selection
 
Je pensais plutot à créer avec des alias un autre welkenraedt !
 
Nous aurions 2 noms de tables qui en fait pointeraient vers la meme...

Reply

Marsh Posté le 25-04-2002 à 17:38:41    

tu fait une requete distinct avec les champs qui t'interessent rue et numero et seulement ceux la, et ensuite une requete que tu accroche a la précédente pour avoir les infos complémentaires en incluant que les champs de la requete précédente.

Reply

Marsh Posté le 25-04-2002 à 17:47:50    

krytz a écrit a écrit :

tu fait une requete distinct avec les champs qui t'interessent rue et numero et seulement ceux la, et ensuite une requete que tu accroche a la précédente pour avoir les infos complémentaires en incluant que les champs de la requete précédente.  




 
c justement là le problème ;)

Reply

Marsh Posté le 25-04-2002 à 18:44:54    

:cry:


---------------
[:pentier]  
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed