Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MYSQL:从数据库中的所有表中选择_Mysql - Fatal编程技术网

MYSQL:从数据库中的所有表中选择

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

所以我有一个名为files的数据库,它包含3个表(IMG、FLASH、PDF)。。。我如何对它们全部运行查询并将其中的所有内容作为单个数组返回?

如果表中有相同的字段,则可以结果:

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有页码、模式等