2016-10-15 3 views
1

Ich trat drei Tabellen und machte eine Ansicht. In dieser Ansicht habe ich eine Spalte mit dem Namen AGE. Nun möchte ich eine weitere Spalte neben der AGE-Spalte mit dem Namen Age_bin_10yr erstellen, die das Alter in 10-Jahres-Klassen binned (eg. “Ge15_Lt25”, “Ge25_Lt35”, “Ge35_Lt45”, “Ge45_Lt55”, “Ge55_Lt65”, “Ge65_Lt75”, “Ge75_Lt85”, etc) zeigt. Ich weiß nicht, wie ich das machen soll. Ich schätze deine Hilfe sehr. Danke vielmals.SQL, fügen Sie eine Spalte zu "Ansicht", Daten Binning

+0

Mindestens zeigen Sie uns Ihre Tabellenstruktur ? – drum

+1

Round (AGE/10, 0) –

+1

Welches DBMS verwenden Sie? –

Antwort

0

Wenn ich richtig verstehen, können Sie eine case Erklärung dafür verwenden:

select *, 
    case when age >= 15 and age < 25 then 'Ge15_Lt25' 
      when age >= 25 and age < 35 then 'Ge25_Lt35' 
      when age >= 35 and age < 45 then 'Ge35_Lt45' 
      when age >= 45 and age < 55 then 'Ge45_Lt55' 
      ... 
    end as Age_bin_10yr 
from yourview 
0

Unter der Annahme, dass die age Spalte vom Typ ist INT:

SELECT 
    'Ge'+CAST((age-5)/10 AS VARCHAR)+'5_Lt'+CAST((age-5)/10+1 AS VARCHAR)+'5' AS Age_bin_10yr, 
    * -- the rest of the columns you need 
FROM 
    ... -- the rest of the view definition 
Verwandte Themen