Charlie: Abfrage mit JOIN

Hallo,

ich habe hier MySQL 5 und will nun von 2 Tabellen eine Abfrage machen:
Select id from tbl where spalte_1 like '%test%'
or id in (select id from tbl1 where spalte_irgendwas like '%12345%')

Dies ist aber nicht so schnell, also hätte ich es mit einem JOIN versucht:
Select id from tbl
LEFT OUTER JOIN
tbl1
ON tbl1.id = tbl.id
where spalte_1 like '%test%'
or spalte_irgendwas like '%12345%'

ABER leider bekomme ich da nicht die selben Ergebnisse wie mit der Subquery zurück.
Kann man so eine Abfrage überhaupt mit einem JOIN machen?

danke+lg
Charlie

  1. yo,

    Select id from tbl where spalte_1 like '%test%'
    or id in (select id from tbl1 where spalte_irgendwas like '%12345%')

    das problem bei der abfrage ist weniger der subselect, warum die abfrage solange dauert, sondern der ableich der spalten mit like '%wert%'. bei solchen bedingungen kann das dbms nicht auf einen index zurückgreifen, sofern überhaupt einer vorhanden ist. der join qwird letzlich die gleiche problematik haben.

    Ilja