Given tabela foo
:Jak ustalić, czy wartość pojawia się w GROUP BY grupy
Num Letter
------------
1 A
1 B
1 B
2 C
3 A
3 C
3 D
Jeśli robię SELECT * GROUP BY Num
I oczywiście coś takiego:
Num Letter
------------
1 A
2 C
3 A
co ja jak udoskonalić to jest:
Num Has_No_Letter_C
---------------------
1 Yes
2 No
3 No
jest prawdopodobnie proste SELECT IF()
plu sa ORDER BY
, ale nie widzę go teraz ...
W moim przykładzie świata rzeczywistego, powstałą tabela jest LEFT JOIN
ed do innej tabeli i chcę, aby móc odrzucić No
wpisy ale zachować NULL
s jeśli moja druga tabela bar
ma Num
= 4 wiersz.
podziękowaniem ty! Pierwszy działa. Zmieniłem wyrażenie na "JEŻELI (SUMA (litera =" C ") = LICZBA (litera)," Tak "," Nie ")" ponieważ mój przykład z prawdziwego życia musi sprawdzić wszystkie C i mogę to zastosować do uzyskać pełne zapytanie. (Jest to prawdopodobnie również czas, w którym refaktoryzowałem i normalizowałem swoje tabele ...) –
@ KenY-N: Aby sprawdzić, czy są one * wszystkie * 'C', łatwiej byłoby wyszukać dowolną wartość, która jest * nie * C: 'SUMA (litera <> 'C')'. – eggyal
Ahh, oczywiście! –