Comment puis-je exécuter les différentes instructions de sélection basé sur un CAS
Je suis confronté à un problème lors de l'exécution de requêtes à l'instruction du CAS.
Basé sur mon état,(pour exemple. la longueur), je veux exécuter les différentes instruction SQL.
Problématique exemple de requête est comme suit:
select case
when char_length('19480821') = 8
then select count(1) from Patient
when char_length('19480821')=10
then select count(1) from Doctor
end
Exception:
[Erreur] lignes de Script: 1-5 --------------------------
Syntaxe incorrecte près du mot clé 'select'.
Msg: 156, Niveau: 15, État: 2
Serveur: sunsrv4z7, Ligne: 2
Je ne suis pas en mesure de corriger la syntaxe. Je suis à la chaîne pour char_length que l'entrée de l'utilisateur.
Comment puis-je le feu de requêtes basées sur certaine condition?
Au CAS où le bon choix ? Ou dois-je utiliser toute autre chose.
OriginalL'auteur surbhit4u | 2010-07-02
Vous devez vous connecter pour publier un commentaire.
Vient de mettre d'ouverture et de fermeture de parenthèse autour d'instruction select résoudre votre problème
ouais..................
OriginalL'auteur Pranay Rana
Le problème, c'est que vous êtes en manque d'ouverture et de fermeture crochets dans votre imbriquée 'Select' états 🙂
il y a quand même une erreur de syntaxe car, dans la troisième ligne est à l'intérieur du support
merci, fixe 😮
OriginalL'auteur VoodooChild
Veuillez noter que ce n'est pas une INSTRUCTION de cas, il s'agit d'un cas d'EXPRESSION. En joignant les requêtes entre parenthèses, vous êtes les convertir (dans la syntaxe) de valeurs.
Ce principe est similaire à celui d'une sous-requête, tels que
"sélectionnez le nom du Médecin, où le salaire = (select max(salaire) Médecin)"
OriginalL'auteur Phlamingo