MYSQL:从数据库中的所有表中选择
所以我有一个名为files的数据库,它包含3个表(IMG、FLASH、PDF)。。。我如何对它们全部运行查询并将其中的所有内容作为单个数组返回?如果表中有相同的字段,则可以结果:MYSQL:从数据库中的所有表中选择,mysql,Mysql,所以我有一个名为files的数据库,它包含3个表(IMG、FLASH、PDF)。。。我如何对它们全部运行查询并将其中的所有内容作为单个数组返回?如果表中有相同的字段,则可以结果: SELECT content FROM IMG UNION ALL SELECT content FROM FLASH UNION ALL SELECT content FROM PDF 如果您的3个表具有相同的结构,那么MySQL存储引擎可能会感兴趣。如果不是,请使用别名,如果列的名称不相同,请使用别名 SELEC
SELECT content
FROM IMG
UNION ALL
SELECT content
FROM FLASH
UNION ALL
SELECT content
FROM PDF
如果您的3个表具有相同的结构,那么MySQL存储引擎可能会感兴趣。如果不是,请使用别名,如果列的名称不相同,请使用别名
SELECT commonColumn1, commonColumn2
FROM IMG
UNION ALL
SELECT commonColumn1, commonColumn2
FROM FLASH
UNION ALL
SELECT commonColumn1, notSoCommonColumn2 AS commonColumn2
FROM PDF
它们是否都有完全相同的列集 如果是这样,你可以做一个联盟
如果没有,则需要发出3个查询…它们没有相同的结构,但共享一些列。如果不想删除重复项,请使用union all。而且它比union运行得更快。是的,我认为flash和pdf之间不可能有重复!为什么这样?为什么一个表没有“fileType”字段?因为我根据每个文件存储不同的数据,例如PDF有页码、模式等