У меня есть E_ids
, которые связаны с парой d_ids
и с o_count
в любом из (1,0,null)
.
Итак, если у какого-либо из E_IDs
есть O_count = 1
, я должен закрепить его в одну строку и написать O_count = 1
за это E_ID else 0
.Деловые заявления с любыми
Но когда я делаю ниже, я получаю все строки без группировки, т. Е. Получаю две строки одного и того же e_ids
. Есть ли другой способ сделать то же самое?
SELECT DISTINCT E_ID, status
(CASE WHEN o_count = any(1) THEN 1
WHEN o_count = any(0) THEN 0
ELSE null END
) Ocount
FROM (SELECT e_id, status, o_count FROM A)
GROUP BY e_id, status, o_count
На самом деле я присоединяюсь два таблицы в этом суб-запросе. Это всего лишь часть всего запроса. Пробовал сделать это немного легко объяснить. :) Даже делать это не помогает. Я все еще получаю две строки с одним и тем же идентификатором. – Pri
@Pri О, мой плохой, забыл удалить его из группы, теперь будет работать. – sagi
Да, это работает. Ура! Огромное спасибо. Я боролся с этим. Я не могу голосовать сейчас, потому что я новичок в Stack Overflow. Сделаю ASAP :) – Pri