Thank you all for the help.
I look for a query that runs on MySQL and SQLite.
Did some testing in MySQL and SQLite, and found interesting things and share them with you:
The Database
Table Propriedade -> 369 records
Table Titulares -> 1074 records
Query from Rathinagiri
Code: Select all
SELECT Propriedade.Inscricao,
Propriedade.Titular_1, Case When Propriedade.Titular_1 = 0 Then '' Else ( select t1.nome from Titulares t1 where T1.Titular_Codigo = Propriedade.Titular_1 ) End,
Propriedade.Titular_2, Case When Propriedade.Titular_2 = 0 Then '' Else ( select t2.nome from Titulares t2 where T2.Titular_Codigo = Propriedade.Titular_2 ) End,
Propriedade.Titular_3, Case When Propriedade.Titular_1 = 0 Then '' Else ( select t3.nome from Titulares t3 where T3.Titular_Codigo = Propriedade.Titular_3 ) End
FROM Propriedade
MySQL ->
369 records
SQLite ->
367 records
Query from Koke
Code: Select all
select P.Inscricao,
P.titular_1, Case When P.titular_1 = 0 Then '' Else T1.nome END,
P.titular_2, Case When P.titular_2 = 0 Then '' Else T2.nome END,
P.titular_3, Case When P.titular_3 = 0 Then '' Else T3.nome END
From Propriedade as P
JOIN Titulares as T1 ON P.titular_1 = T1.titular_codigo
JOIN Titulares as T2 ON P.titular_2 = T2.titular_codigo
JOIN Titulares as T3 ON P.titular_2 = T3.titular_codigo
MySQL ->
367 records
SQLite ->
367 records
Query 2 from Koke
Code: Select all
select P.Inscricao, P.titular_1, P.titular_2, P.titular_3,
IF (P.titular_1 = 0,' ', T1.nome),
IF (P.titular_2 = 0,' ', T2.nome),
if (P.titular_3 = 0,' ', T3.nome)
From Propriedade as P
LEFT JOIN Titulares as T1 ON P.titular_1 = T1.titular_codigo
LEFT JOIN Titulares as T2 ON P.titular_2 = T2.titular_codigo
LEFT JOIN Titulares as T3 ON P.titular_3 = T3.titular_codigo
MySQL ->
369 records
SQLite ->
Error: no such function: IF