SELECT data FROM two tables in MySQL SELECT data FROM two tables in MySQL mysql mysql

SELECT data FROM two tables in MySQL


By using UNION you may get several times rows with the same ID. What about using LEFT JOIN ?

If I've understood your question:

SELECT table_zero.id, table_1.varchar_field, table_2.varchar_fieldFROM table_zero  LEFT JOIN table_1 ON table_zero.id = table_1.id  LEFT JOIN table_2 ON table_zero.id = table_2.idWHERE table_1.varchar_field LIKE '%str%'  OR table_2.varchar_field LIKE '%str%'


Try this

SELECT *FROM (SELECT table_zero.id AS ID, table_1.varchar_field AS fieldFROM table_zero  JOIN table_1 ON table_zero.id = table_1.idWHERE table_1.varchar_field LIKE '%str%'UNIONSELECT table_zero.id, table_2.varchar_field  AS fieldFROM table_zero  JOIN table_2 ON table_zero.id = table_2.id) tblWHERE tbl.field LIKE '%str%'


SELECT table_zero.id, table_1.varchar_field, table_2.varchar_fieldFROM table_zero  LEFT JOIN table_1 ON table_zero.id = table_1.id  LEFT JOIN table_2 ON table_zero.id = table_2.idWHERE table_1.varchar_field LIKE '%str%'  OR table_2.varchar_field LIKE '%str%'