Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1036 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Info sur +

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Info sur +

n°1136898
tekbright
Posté le 01-07-2005 à 10:48:15  profilanswer
 

Bonjour,
 
J'ai un probleme sur une requete, et quelqu'un m'a dit que la solution serait dans un opérateur  ( + ) ou ( - ), il ne se rappelle plus exactement comment cela fonctionne, et je n'en ai jamais entendu parler.
 
Si vous pouviez m'expliquer si cet opérateur existe, si vous connaissez son nom, et à quoi il correspond ? ( une recherche dans google avec + et - est pas évidente ... )
 
Merci d'avance !

mood
Publicité
Posté le 01-07-2005 à 10:48:15  profilanswer
 

n°1136903
cesarr89
Posté le 01-07-2005 à 10:49:17  profilanswer
 

Et la requête elle est ou?
 


---------------
!== Force et honneur ==!
n°1136913
tekbright
Posté le 01-07-2005 à 10:55:37  profilanswer
 

J'ai du mal m'expliquer : Ma question ne se pose pas sur la requete, mais sur un éventuel opérateur "( + )" ou "( - )" qui existerait, et dont je n'ai jamais entendu parler.
 
Je voudrai juste savoir à quoi cela correspond. Je vérifirai apres que c'est une solution appropriée à mon probleme.

n°1136918
alien_nan
Posté le 01-07-2005 à 10:58:29  profilanswer
 

tekbright a écrit :

J'ai du mal m'expliquer : Ma question ne se pose pas sur la requete, mais sur un éventuel opérateur "( + )" ou "( - )" qui existerait, et dont je n'ai jamais entendu parler.
 
Je voudrai juste savoir à quoi cela correspond. Je vérifirai apres que c'est une solution appropriée à mon probleme.


 
Faire des additions et des soustractions ??? hors contexte et sans le type de base ni la requete ni ce que tu veux faire, peux pas etre plus precis...

n°1136933
Elmoricq
Modérateur
Posté le 01-07-2005 à 11:02:41  profilanswer
 

Sous Sybase on peut concatener des chaînes avec '+'.
Mais sinon, clair que sans plus d'information, ça va être dur.  [:petrus75]

n°1136938
herks
Posté le 01-07-2005 à 11:05:43  profilanswer
 

sous oracle -- ca met en commentaire :)
 
precise ou moins sous quel sgbd tu es ?

n°1136940
tekbright
Posté le 01-07-2005 à 11:06:15  profilanswer
 

Bon, j essaye de préciser.
J'ai une requete qui prend des info sur des tables A,B et C.
Dans ma requete, si l'info est dans les trois tables, c'est bon, mais sinon, elle n'afficher rien ( genre elle n'est que dans A et B, etc).
Donc on m'a di qu'il y aurait une sorte d'opérateur, du genre :
where a.champ = b.champ (+) and a.champ = c.champ  
et que le (+) permetterait d'éviter que la jointure "bloque" les résultats si celle-ci n'existe pas.
 
Si c'est toujours pas clair, dite le, j'ai un peu de mal a expliquer ce que je veux.

n°1136944
tekbright
Posté le 01-07-2005 à 11:08:10  profilanswer
 

Je suis sous
 
 
 
access.  :(  
 
Donc je n'ai jamais entendu parler de cette fonctionalité, et si elle existe, il y a des grandes chance qu'elle ne marche pas sous access, mais bon, j essaye quand meme.
 
 
 

n°1136995
Beegee
Posté le 01-07-2005 à 11:29:19  profilanswer
 

Sous Oracle, ça permet de faire des jointures externes.
 
Exemple:
 
SELECT A.VALUE, B.VALUE FROM A, B
WHERE A.ID = B.ID(+);
 
Ca renvoie toutes les valeurs du champ VALUE dans A, et si l'ID de A existe dans B, alors ça renvoie aussi la valeur du champ VALUE dans B.

n°1137001
tekbright
Posté le 01-07-2005 à 11:34:42  profilanswer
 

ok, exactement ce qu'il me fallait.
Reste plus qu'a vérifier que ca marche dans access... ce dont je doute fortement.
 
Merci beacoup !  :jap:  

mood
Publicité
Posté le 01-07-2005 à 11:34:42  profilanswer
 

n°1137004
Beegee
Posté le 01-07-2005 à 11:37:17  profilanswer
 

Il me semble que c'est une syntaxe propre à Oracle.
 
Dans la plupart des autres SGBD, on utilise LEFT JOIN.

n°1137018
tekbright
Posté le 01-07-2005 à 11:47:23  profilanswer
 

Oui, c'est que j'était en train de regarder, reste plus qu'à l appliquer à mon probleme.
 
Merci encore !

n°1137028
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2005 à 11:51:35  profilanswer
 

et le (-) n'existe pas :)

n°1137030
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2005 à 11:52:33  profilanswer
 

beegee > ça marche aussi sous postgre, et sql server utilise *= et =* à la place (avec l'* du côté opposé de là où on met le (+) sous Oracle, c'est pratique comme truc :D)

n°1137218
tekbright
Posté le 01-07-2005 à 14:30:31  profilanswer
 

Bon, maintenant je galere sur Left join
 
Quand je met ceci :

Code :
  1. select *
  2. from table1,table2
  3. left join table1 on table1.champB = table2.champB


 
il me mets "Expression de jointure non suporté"
 
Une idée pour parrer à ceci ?  ( c'est juste deux table relié par "champB" )


Message édité par tekbright le 01-07-2005 à 14:30:45
n°1137363
Beegee
Posté le 01-07-2005 à 15:46:30  profilanswer
 

Normalement ce serait plutôt :
 
select *
from table1
left join table2 on table2.champB = table1.champB
 
C'est la syntaxe mySql, je sais pas ce que ça donne sous Access ...

n°1137397
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2005 à 15:55:17  profilanswer
 

c'est la même

n°1137540
denzz
huhuuuuu ! (désolé )
Posté le 01-07-2005 à 17:05:55  profilanswer
 

@arjuna => tu est sûr que le (+) marche aussi sous postgre ??  
depuis quelle version ??

n°1137544
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2005 à 17:10:18  profilanswer
 

hmmmm... je peux pas l'affirmer à 100%, parceque j'en ai pas sous la main, mais il me semble que j'en ai fait y'a pas longtemps. mais c'est possible que je me plante, tout comme c'est possible que ça vienne d'un package additionnel (c'est pas moi qui l'ai installé)

n°1137545
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2005 à 17:11:09  profilanswer
 

en tout cas, si c'est pas le (+), alors c'est le =* qu'il supporte, je suis sûr et certain qu'il en supporte un des deux.

n°1137547
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2005 à 17:12:46  profilanswer
 

tout comme il supporte le "complete outer join", que ne supportent ni Oracle ni SQL Server, alors que c'est dans la norme SQL :
 
toutes les lignes de A avec ou sans B et toutes les lignes de B avec ou sans A
 
Avec SQL Server, faut faire ça à la place :
 

Code :
  1. select a.a, b.b
  2. from a, b
  3. where a =* b
  4. union
  5. select a.a, b.b
  6. from a, b
  7. where a *= b

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Info sur +

 

Sujets relatifs
sessions & cookies, recuperation info[INFO] Limitations de la fonction RAND() de SQL Server
Boite d'info qui colle au fesse de la sourisSupport de caractères ( ' par ex)dans une info-bulle [RESOLU]
Upload multiple + info en bdd ?? help merecherche info sur code barre
exist-il un script pour extraire les info. d'un WINS ? merci :)[access] info sur tabdefs("nom_table").connect
[DirectX] Info sur D3DXMatrixLookAtLH()Inventaire : importation d'info d'un fichier txt vers ms access 2000
Plus de sujets relatifs à : Info sur +


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR