0
votes

SQL Comment sélectionner les identifiants de participants avec des valeurs de ligne spécifiques dans la même table, dans laquelle ces valeurs de ligne proviennent d'une liste de recherches dans un autre schéma?

Je souhaite sélectionner des participants à partir d'une table qui dispose du cancer et du diabète de diagnostics dans la colonne B

par exemple: xxx

Comment écrire une requête qui Permet de choisir des participants qui ont deux (ou plus) d'un certain diagnostic, par exemple, je veux seulement voir des participants qui ont à la fois le cancer et le diabète? (Dans l'exemple ci-dessus, ID du participant 1234)

J'ai essayé de faire une déclaration de sélection simple: xxx

(Les valeurs de ces diagnostics dans la table de recherche )

Je veux une sortie comme ceci: xxx


0 commentaires

3 Réponses :


0
votes

Agrégation fournit une option simple: xxx

Vous pouvez également utiliser une logique existante ici: xxx


0 commentaires

0
votes

Vous pouvez faire avec CTE et voici le Démo .

| participantid | diagnosis |
| ------------- | --------- |
| 1234          | Cancer    |
| 1234          | Diabetes  |


0 commentaires

0
votes

Si vous voulez participants , vous pouvez utiliser: xxx

Si vous voulez les lignes d'origine, je pourrais suggérer Existe : < / p> xxx


2 commentaires

Merci pour vos réponses! Dans ma base de données, les valeurs de ces diagnostics semblent provenir d'une liste de recherches, avec les valeurs que je veux voir être attribuées «1» et «10». Lorsque j'essaie d'exécuter votre deuxième requête, je reçois l'erreur "argument de l'erreur et doit être de type booléen, pas de type entier", et lorsque j'essaie de saisir les diagnostics de texte, je souhaite récupérer le "cancer" ou "diabète". Ce n'est pas reconnu. Toute façon autour de cela?


@Syd. . . Cette réponse utilise les valeurs de données et les noms de colonne comme spécifié dans votre description de la question.