Php 联合循环?还是单一查询?

Php 联合循环?还是单一查询?,php,mysql,sql,mysqli,Php,Mysql,Sql,Mysqli,若我使用UNION从数据库中进行多个选择,是否将其视为一个查询?还是多个查询 SELECT column_name(s) FROM table1 UNION SELECT column_name(s) FROM table2; 这是一个单一的查询吗?还是两个问题 (我每小时的查询次数有限,我希望优化我的代码) 谢谢 来自文档: SQL UNION运算符用于组合2个或更多的结果集 选择语句。它将删除不同行之间的重复行 选择语句 因此,您的两个select组合到一个查询中;) 正如其他人所指出的,

若我使用UNION从数据库中进行多个选择,是否将其视为一个查询?还是多个查询

SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
这是一个单一的查询吗?还是两个问题

(我每小时的查询次数有限,我希望优化我的代码)


谢谢

来自文档:

SQL UNION运算符用于组合2个或更多的结果集 选择语句。它将删除不同行之间的重复行 选择语句

因此,您的两个select组合到一个查询中;)


正如其他人所指出的,这是一个问题

当编码到项目中时,我会小心这种方法,除非这两个表有非常相似的数据,原因如下

A)
table1
select中的列数必须与
table2
select中的列数相匹配。您可以通过添加
NULL
列来解决这个问题

B) 您将丢失第二次选择的列名

C) 从框中无法分辨哪些行来自哪个表。您可以通过向每个select添加一个静态类型列来解决这个问题

D) 很容易漏掉一些东西并使用错误的数据


作为补充说明。您使用的是
UNION
,它将从结果中删除重复项,尽管两个表中的数据可能不太可能相同;如果您试图减少总查询量,那么从概念上看,您似乎需要一个
UNION ALL

它是一个查询,一个查询只有3个不同的语句