我有两个不同的表,包含类似的数据,但格式略有不同。
是否可以从两个表中返回搜索结果?我还需要对这些结果进行分页。
答案 0 :(得分:1)
您可以使用UNION
查询两个表并仅在一个查询中返回结果:
SELECT field1,field2 FROM table1
UNION
SELECT field1,field2 FROM table2
如果table1
和table2
非常不同,您可以将UNION
与更复杂的FROM
结合使用其他select
之类的东西......
SELECT field1,field2 FROM (SELECT id1 as field1,id2 as field2 FROM table1a,table1b WHERE id1 = id2)
UNION
SELECT field1,field2 FROM table2
要对结果进行分页,您可以将联合包含在另一个select
中并使用limit
和offset
....
SELECT field1,field2 FROM (
SELECT field1,field2 FROM table1
UNION
SELECT field1,field2 FROM table2
) LIMIT 100 OFFSET 0
如果您给我们一个表格结构的小描述,我们可以提供更好的帮助。