2017-07-14 1 views
-3

Je veux transformer un ensemble de données d'étiquettes à une représentation binaire via une requête SQL, à savoir le tableau suivant:multi-classe à la transformation multi-étiquettes dans MS SQL Server

|---------------------------| 
| Example | Label   | 
|---------------------------| 
| 1  | Health  | 
| 1  | Business | 
| 1  | Science  | 
| 2  | Sports  | 
| 2  | Business | 
|---------------------------| 

se transforme en une nouvelle table :

|---------------------------|-----------|-----------|-----------| 
| Example | Business  | Health | Science | Sports | 
|---------------------------|-----------|-----------|-----------| 
| 1  |  1  |  1 |  1 |  0 | 
| 2  |  1  |  0 |  0 |  1 | 
|-----------|---------------|-----------|-----------|-----------| 

via une requête SQL. Que serait la requête SQL?

+1

bonjour et bienvenue à stackoverflow. Veuillez supprimer les images et tapez votre structure de données, l'échantillon de données et les résultats attendus. En outre, tapez ce que vous avez essayé jusqu'à présent. Et enfin, à quoi DBRMS est-il lié? – Horaciux

Répondre

0
select example, sum(case when label='Business' then 1 else 0 end) 'Business' 
    ,sum(case when label='Health' then 1 else 0 end) 'Health' 
    ,sum(case when label='Science' then 1 else 0 end) 'Science' 
    ,sum(case when label='Sports' then 1 else 0 end) 'Sports' 
From MyTable 
group by example 
+0

Merci, Horaciux. Je suis nouveau à SQL, donc pourquoi vous ne voyez pas ma tentative. J'ai essayé de mettre dans une table, mais Stack Overflow interpréterait la table comme une syntaxe et changerait la question de sortie en quelque chose qui ne ressemble pas à une table. C'est pourquoi vous voyez les images plutôt qu'une version texte de la table. J'apprécie vraiment l'aide. Si j'ai d'autres problèmes, je vais modifier cette question avec ce que vous avez demandé. Merci encore! –