SQLite: выбор значений из двух столбцов, как если бы они были сохранены в одном столбце - PullRequest
0 голосов
/ 24 июня 2019

Используя SQLite, как я могу выбрать значения из двух столбцов в одном наборе результатов, как если бы они были получены только из одного столбца?У меня есть таблица как это:

 value_1 | value_2
---------+---------
 a       | a
 b       | b
 c       | c
 a       | d

Теперь, если я делаю

SELECT value_1, COUNT(value_1) AS count_value_1
FROM some_table
GROUP BY value_1
ORDER BY count_value_1 DESC

Я получаю что-то вроде этого:

a | 2
b | 1
c | 1

И что я хотел быТакже нужно включить все значения из второго столбца (как если бы они также были сохранены в первом), так что я получаю:

a | 3
b | 2
c | 2
d | 1

1 Ответ

0 голосов
/ 24 июня 2019

С UNION ALL:

select t.value, count(*) from (
  select value_1 value from some_table
  union all
  select value_2 from some_table
) t
group by t.value

Если есть значения null и вы не хотите, чтобы они учитывались, добавьте это условие:

where t.value is not null

перед предложением group by.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...