Antetodo, gracias
jurena por contestar a mi problema.
A ver, la intención de la query no es sacar resultados. La query está para encontrar inconsistencias que se hayan podido colar. Estamos en una fase de desarrollo y antes de realizar un proceso más importante debo asegurarme que todo está en su sitio.
Si utilizo la query que me propones:
Código:
select
variables.name as var_name,
variables.id as var_id,
var_questions.question as question,
languages.name as lang
from
variables
inner join var_questions on variables.id = var_questions.id_variable
inner join languages on var_questions.id_language = languages.id
where
var_questions.question is null
and languages.enabled = 1
Saco todos los resultados coincidentes, pero si no tengo algún registro en la tabla var_questions que ligue una variable con un idioma, no me va a aparecer (probado: no saca resultados).
Pongamos por ejemplo:
Código:
variables
--------------------
id name
56 var_1
60 var_2
61 var_3
languages
------------------
id name enabled
2 es 1
4 ca 1
5 en 0
var_questions
------------------
id id_variable id_ language question
1 56 2 Variable 1 castellano
2 60 2 Variable 2 castellano
3 61 2 Variable 3 castellano
Como ves, hay un idioma 'ca' que está activo pero que no tiene ningún registro en var_questions que lo relacione con ninguna variable. Entonces yo quiero justamente una query que me diga '
var_1, var_2 y var_3 les falta el lenguage "ca"'
Acepto que la query que tengo (ver primer mensaje) no sea la mejor (acepto ideas), pero el problema es que en MySQL 4 funciona y en MySQL 5 no (sin devolver ningún error, simplemente
rows 0).
Por favor, alguna ayuda!