Проблем с IN в заявка

Msecurity

Registered
Здравейте, имам следният проблем с IN , уж всичко е описано точно, но ми дублира всички резултати по 3 пъти (колкото са таблици в заявката...)
Ето я заявката:
Използвам IN защото някои път city_id = 1,2,3 както и category ... незная дали е правилно ...
[sql]SELECT a.*, b.*, c.* FROM app_object_address as a, app_object_body as b, app_object_category as c WHERE a.object_id=b.object_id AND b.object_id=c.object_id AND a.lang_code=b.lang_code AND a.object_id=c.object_id AND b.lang_code="bg" AND a.city IN (4) OR c.category_id IN (4) OR b.title like "%Бар%"[/sql]
Къде може да е проблема ...
 
Пробвай с да ги групираш по ид?

Код:
SELECT a.*, b.*, c.* 
FROM 
app_object_address as a, 
app_object_body as b, 
app_object_category as c 
WHERE 
a.object_id=b.object_id AND 
b.object_id=c.object_id AND 
a.lang_code=b.lang_code AND 
a.object_id=c.object_id  AND 
b.lang_code="bg" AND 
a.city IN (4) OR 
c.category_id IN (4) OR 
b.title like "%Бар%

Group By a.object_id
:idea:
 
това стана - Благодаря... но изникна друг проблем ...
имам обект с city_id = 4... но когато заявката е city_id IN (1,4) ... не извежда резултати .. а реално има обект с city_id = 4 .. и трябва да изведе 1 резултат ?
 
Msecurity каза:
това стана - Благодаря... но изникна друг проблем ...
имам обект с city_id = 4... но когато заявката е city_id IN (1,4) ... не извежда резултати .. а реално има обект с city_id = 4 .. и трябва да изведе 1 резултат ?

Можеш ли да дадеш примерна таблица в http://www.sqlfiddle.com/ със заявката, която не работи?
 

Горе