Esta es una condición de cumplimiento imposible.
La evaluación del WHERE se cumple sobre cada uno de los registros, considerados independientemente, es decir que para que esas dos condiciones se cumplan ese único campo debe tener el valor 1 y 2
al mismo tiempo, cosa total y absolutamente
imposible.
La condición a colocar es IN(), o bien OR.
Además de esto, en realidad no estás haciendo un INNER JOIN, sino un LEFT JOIN, que tiene resultados completamente distintos.
Ahora bien, como nos estás diciendo con qué DBMS estás trabajando, puede haber algunas diferencias sintácticas importantes para el caso que no estoy viendo. Las soluciones que te propongo con AMSI, es decir, planteadas desde el SQL estándar y deberían funcionar en (casi) todos los DBMS.
Tu consulta debería ser mas o menos así:
Código MySQL:
Ver original `restaurantes` `t`
INNER JOIN `serviciosrestaurantes` SR
ON T.
`id`= SR.
`restaurantes_id`
o bien
Código MySQL:
Ver original `restaurantes` `t`
INNER JOIN `serviciosrestaurantes` SR
ON T.
`id`= SR.
`restaurantes_id`
Dos cosas:
1) No nos dices qué framework crea esta sentencia, por lo que no podemos saber si es o no el adecuado, o siquiera si es bueno.
2) Un FMWK es tan bueno como el que lo programa.. lo cual desde la óptica de las bases de datos no suele ser una buena referencia. El 90% de las consultas creadas por medio de ellos deben ser modificadas para que realmente sean eficaces o eficientes.