J'ai une table contenant un champ appelé ChannelId. Je veux le diviser en deux champs en fonction de la valeur. J'ai essayé ceci:Calcul dans l'instruction SQL
SELECT CustomerId, ChannelId = 1 as Chan1, ChannelId = 2 as Chan2 FROM ....
L'objectif étant que j'ai deux colonnes booléenne si le champ ChannelId est de la valeur approriate. Je reçois une erreur de syntaxe.
En regardant la syntaxe SQL Je ne vois pas pourquoi je ne peux pas utiliser une expression, puis l'alias comme un nouveau nom de colonne, mais SQL Server croassa dessus. Est-ce que je fais quelque chose de vraiment bête? Comment puis-je obtenir cet effet?
Je ne comprends pas la question. S'il n'y a que deux valeurs dans la colonne, pourquoi ne pas simplement retourner les valeurs en colonnes? Voulez-vous effectuer un agrégat sur la colonne? comme dire compter combien de fois chaque valeur est présente? – spinon
Non, reformatage des données pour l'entrée dans un processus différent. –
Je pense que vous devez créer deux requêtes lâches (ou par sous-requêtes). L'astuce de SQL n'est pas de demander des choses dans la partie 'SELECT', mais dans la partie' WHERE'. – Marnix