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

 


Dernière réponse
Sujet : [MYSQL] comment faire cette requete
cvince Voila la réponse...
 
select u.user_id
from user u left outer join habilitation h
on u.user_id = h.user_id
and h.project_id = 1
where h.user_id is null

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
cvince Voila la réponse...
 
select u.user_id
from user u left outer join habilitation h
on u.user_id = h.user_id
and h.project_id = 1
where h.user_id is null
cvince Le SELECT imbriqué n'est pas permis en MySQL...

 

[edit]--Message édité par cvince--[/edit]

irulan select * from USER
 from USER
 where user_id not in
   (select distinct user_id from habilitation
     where project_id = X)
 
Le NOT IN n'est pas terrible du point de vue perf., mais reste très pratique sur des petites tables. Sinon si les tables sont vraiment très grosses, peut-être serat-ce préférable d'utiliser un NOT EXISTS...
cvince Ok...
 
J'ai 3 tables :
 - USER (user_id)
 - PROJECT(project_id)
 - HABILITATION(user_id, project_id)
 
La table HABILITATION est une table de liaison entre USER et PROJECT.
 
Je veux séléctioner tout les users qui n'ont pas d'habilitation à projet donné.
cvince

Mara's dad a écrit a écrit :

select col1  
from table1, table2  
where table1.col1<>table2.col2
and table2.col3 = '1'




 
Tout à fait d'accord, mais il faut dans ce cas précis qu'il existe au moins une ligne dans table2 qui corresponde à clo3='1', sinon, aucune ligne n'est retournée.

Mara's dad select col1  
from table1, table2  
where table1.col1<>table2.col2 and table3.col3 = '1'
cvince Salut ! Tout est dans le titre...
 
select col1
from table1
where col1 not in (select col2 from table2 where col3 = '1')

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)