I'm trying to select rows from a table where some value a
is within c
columns at least b
times.
Here is a simplified example of the data I'm working with. I'm trying to find rows that have an h
in at least 2 of the greetings.
greeting1 | greeting2 | greeting3 | farewell1 | farewell2 |
---|---|---|---|---|
hi | hello | hey there | goodbye | peace |
hi | sup | yo | Au revoir | see ya |
yo | hola | ayyyy | hang tight | reverse-hi |
hola | sup | hello | see ya | peace |
hello | yo | hola | hang tight | ciao |
ayyy | yo | hola | hang tight | ciao |
And below are the rows I'd like to grab:
greeting1 | greeting2 | greeting3 | farewell1 | farewell2 |
---|---|---|---|---|
hi | hello | hey there | goodbye | peace |
hola | sup | hello | see ya | peace |
hello | yo | hola | hang tight | ciao |
(I italicized and bolded for easier ability to see)
I'm just learning SQL, so this might be basic. I was having some difficulties. I know getting the rows and checking all greeting1 would look something like:
SELECT *
FROM
GreetingsAndFarewell
WHERE
greetings1 LIKE '%h%'
AND greetings2 LIKE '%h%'
AND greetings3 LIKE '%h%'
But what if I only care if at least 2 greetings have an h
in them?
Here are some of the similar questions I've seen, but I don't think either of them really address this: