合并多个 SELECT 查询
为了从众多模式中提取数据,用户使用 Excel 生成了一组 SELECT 语句对于包含大量相同模式的数据库。每个查询都会获取单个结果,目的是将它们组合成单列输出,其中多行代表不同的模式。
涉及顺序 SELECT 查询的初始方法导致后续行被丢弃,尽管使用了 UNION全部。这是因为 LIMIT 1 子句将每个子查询限制为单行,从而阻碍了 UNION ALL 组合结果的能力。
为了缓解此问题,为每个子语句加上括号可确保语法清晰并允许正确应用 LIMIT:
(SELECT result FROM tbl1 LIMIT 1) UNION ALL (SELECT result FROM tbl2 LIMIT 1)
如 UNION 文档中所述,括号内的子语句可以包含 ORDER BY 和LIMIT 子句适用于它们。通过这样做,子句将应用于子语句的结果而不是整个 UNION 操作。这使得能够从每个模式检索单个结果,同时将它们组合成单个列输出。
以上是如何有效地将多个 SELECT 查询的单行结果合并到一列中?的详细内容。更多信息请关注PHP中文网其他相关文章!