0

I have problem with this query.

SELECT id, zadane, firma, nazov, miesto, ukoncenie
FROM praca
WHERE LOWER( nazov ) LIKE '%administratívny pracovník, referent%'
AND potvrdena =1
AND LOWER( miesto ) LIKE '%bratislavský kraj%'
OR LOWER( miesto ) LIKE '%bratislava%'
OR LOWER( miesto ) LIKE '%malacky%'
OR LOWER( miesto ) LIKE '%pezinok%'
OR LOWER( miesto ) LIKE '%senec%'
ORDER BY nazov
LIMIT 0 , 30

It's supposed to display only records which LOWER(nazov) LIKE something but it still displays everything which contains something from LOWER(miesto). I'm not sure if I explained it correctly. Srry for my english.

Thanks

2 Answers 2

3

You need to wrap the ORs in ().

SELECT id, zadane, firma, nazov, miesto, ukoncenie
FROM praca
WHERE LOWER( nazov ) LIKE '%administratívny pracovník, referent%'
AND potvrdena =1
AND ( 
   LOWER( miesto ) LIKE '%bratislavský kraj%'
   OR LOWER( miesto ) LIKE '%bratislava%'
   OR LOWER( miesto ) LIKE '%malacky%'
   OR LOWER( miesto ) LIKE '%pezinok%'
   OR LOWER( miesto ) LIKE '%senec%' 
)
ORDER BY nazov
LIMIT 0 , 30
Sign up to request clarification or add additional context in comments.

Comments

0

Try this:

SELECT id, zadane, firma, nazov, miesto, ukoncenie
FROM praca
WHERE LOWER( nazov ) LIKE '%administratívny pracovník, referent%'
AND potvrdena =1
AND( 
   LOWER( miesto ) LIKE '%bratislavský kraj%'
OR LOWER( miesto ) LIKE '%bratislava%'
OR LOWER( miesto ) LIKE '%malacky%'
OR LOWER( miesto ) LIKE '%pezinok%'
OR LOWER( miesto ) LIKE '%senec%'
)
ORDER BY nazov
LIMIT 0 , 30

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.