2010-03-01 4 views
2

У меня есть один стол, назовем его «TBL».
У меня есть одна колонка, которая имеет только 3 значения. (Скажем, «AAA», «BBB», «CCC»)
значения могут возвращаться несколько раз.
, например:Как объединить и суммировать два результата в sql?

TBL 
--- 

Column1 
------- 
AAA 
AAA 
BBB 
CCC 
BBB 
CCC 
BBB 
CCC 
AAA 

я хочу, чтобы создать табличный результат, который выглядит следующим образом:

TBL-RESULT 
---------- 
AAA+BBB 60% 
CCC  40% 

я хочу показать ААА и ВВВ в одном результате и там PRECENTAGE от всех значений в одной строке , и CCC во второй строке.

Большая проблема также в том, что мне нужно сделать это в sql ACCESS (2007).

Может кто-нибудь мне помочь?

спасибо, Gady м

ответ

1

Предположим, таблица называется MyTable и столбец MyColumn

select IIF(MyColumn<>'CCC', 'AAA+BBB', 'CCC'), 
    100*count(MyColumn='CCC')/(select count(*) from MyTable) from MyTable 
    group by MyColumn='CCC' 
+0

вы имели в виду IIF или IF? –

+0

Еще раз, ваш ответ работает на решетку! но кажется, что я что-то пропустил. в той же таблице у меня есть также пустые значения, что я хочу, чтобы их игнорировать это выглядит примерно так: MyTable ------- COLUMN1 ------- AAA AAA BBB CCC в CCC BBB CCC AAA, как я могу настроить свой ответ на новую ситуацию? еще раз спасибо, gady m – gadym

+0

в моем последнем комментарии пример не отображается должным образом, есть пустые строки между некоторыми значениями ... – gadym

Смежные вопросы