Я хотел бы подсчитать различные значения на основе двух столбцов и скопировать очищенную таблицу на основе различных значений только для этих столбцов.
Исходная таблица содержит 5 столбцов.
b_id | col1 | col2 | col3 | col4
1 | c11 | c21 | c31 | c41
2 | c21 | c22 | c23 | c24
3 | c31 | c22 | c23 | c24
4 | c41 | c42 | c44 | c44
4 | c41 | c52 | c53 | c54
6 | c61 | c62 | c63 | c64
6 | c61 | c72 | c73 | c74
7 | c71 | c72 | c73 | c74
Я бы хотел выбрать только:
b_id | col1 | col2 | col3 | col4
1 | c11 | c21 | c31 | c41
2 | c21 | c22 | c23 | c24
3 | c31 | c22 | c23 | c24
4 | c41 | c42 | c44 | c44
6 | c61 | c62 | c63 | c64
7 | c71 | c72 | c73 | c74
, поскольку b_id & col1 имели дубликаты. Я не против, если дубликаты есть или нет на col2, col3 и col4.
Я пробовал это:
DROP TABLE IF EXISTS
new_table
CREATE TABLE
new_table
AS (
select distinct
b_id
, col1
from
old_table
WHERE
col2 IN (val1, val2, val3, val4)
AND col4 = xxx
);
, но это выбирает нужные мне разные значения, но только эти два столбцы, а не остальные столбцы ...: - /
Есть идеи? Спасибо!