BlueyMedlem sedan dec. 200220 inlägg Går det att ställa händelsebaserade villkor i en SQL-fråga mot MySQL 4.0.14?
I exemplet nedan vill jag joina olika tabeller beroende på vad ett värde i grundtabellen innehåller:
select a.id, a.customer_name, b.title, c.name
from errors a
case a.form_id when 1 then
inner join errors_studio b on a.category_id=b.id
inner join errors_custtype c on a.papers_id=c.id
end
case a.form_id when 2 then
inner join errors_pren b on a.category_id=b.id
inner join errors_papers c on a.papers_id=c.id
end
Jag misstänker att "case" inte är rätt kommando, men får fungera som förklaring till det jag vill göra...
BlueyMedlem sedan dec. 200220 inlägg Hur skulle denna fråga se ut med union?
Är union prestandamässigt bättre än att joina alla intressanta tabeller och låta PHP-scriptet filtera?
LarsGMedlem sedan dec. 200012 464 inlägg select a.id, a.customer_name, b.title, c.name
from errors a
inner join errors_studio b on a.category_id=b.id
inner join errors_custtype c on a.papers_id=c.id
where a.form_id = 1
union all
select a.id, a.customer_name, b.title, c.name
from errors a
inner join errors_pren b on a.category_id=b.id
inner join errors_papers c on a.papers_id=c.id
where a.form_id = 2
Att hantera utsökningen i PHP är aldrig bra.
Din datamodell är suspekt.