对查询有点困惑。我把它简化为它的本质。 第一个语句是UNION ALL之前的选择 第二个语句是UNION ALL之后的选择。
目标:在第一个语句中返回所有结果,然后限制第二个语句的结果。 发生了什么:如果我要求限制为1,那么它不会向我显示第二个声明中的任何记录。但是会显示第一个声明的2条记录。 有谁知道如何解决这个问题?
CREATE
OR REPLACE VIEW qrytest
AS (
select *
from
(select field1,field2
from tableOne) as tbl1
UNION ALL
select *
from
(select field1, field2
from tableOne limit 1) as tbl2
);
select *
from qrytest
where field2 = 10
答案 0 :(得分:0)
观察您的CREATE VIEW
声明;我认为您不需要第二个选择语句,如下所示,因为您只是复制该表中的记录。
select *
from
(select field1, field2
from tableOne limit 1) as tbl2
您的查询可以修改为
CREATE OR REPLACE VIEW qrytest
AS (
select field1,field2
from tableOne
);