Ma requête SQL ne fonctionne pas même si j'ai essayé différentes solutions.
J'ai reçu une table J'ai une autre table Je voudrais extraire les lignes et je Besoin de savoir si une valeur spécifique est présente dans la deuxième table (par exemple, la valeur A) p> quelque chose comme ceci: p> voici ma demande : p> Tableone code> avec une liste d'éléments avec des lignes telles que ceci p> Tabletwo code> avec une liste d'éléments avec des lignes telles que ceci p>
5 Réponses :
Essayez quelque chose comme ça Premièrement, la jointure intérieure ne garde que des lignes présentes dans les deux tables. Donc, vous n'obtiendrez jamais «non» sur ce test p> p>
Qu'est-ce que E.Text dans votre deuxième table? Veuillez fournir un scénario plus détaillé? Si cela n'est pas présent. Vous trouverez ci-dessous la requête.
Select a.letter, Case when b.letter is not null then 'YES' else 'NO' End as flg From tableone a Left join tabletwo b on a.letter =b.letter;
Vous devez rejoindre les tables, voir le Demo . groupe par lettre code> et utiliser l'agrégation conditionnelle:
Résultats: P> | letter | result |
| ------ | ------ |
| A | yes |
| B | yes |
| C | no |
Merci beaucoup pour votre réponse. Il travaille parfaitement!
@Clarissebadiou Si cela résolvait votre problème, envisagez d'accepter la réponse en cochant la coche à gauche.
si Tabletwo code> a toutes les lettres de TableONNE CODE>, vous pouvez simplement utiliser l'agrégation conditionnelle: select t1.*,
(case when exists (select 1
from tabletwo t2
where t2.letter = t.letter and t2.text = 'SAIRET'
)
then 1 else 0
end)
from tableone t1;
Merci beaucoup pour toutes vos réponses p>
Il fonctionne avec la demande suivante p>
cas lorsque la somme (cas E.Actio1 lorsque 'SAIRET' puis 1 extrémité)> 0 puis 'oui' sinon 'non' fin p>
Prenez le temps et lisez ceci: