Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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
尝试在SQLite3中创建具有多个条件的SQL视图_Sql_Sqlite - Fatal编程技术网

尝试在SQLite3中创建具有多个条件的SQL视图

尝试在SQLite3中创建具有多个条件的SQL视图,sql,sqlite,Sql,Sqlite,我想知道它是否足够向前,以下面的方式创建一个视图,我的尝试没有如预期的那样起作用 我正在尝试使用以下查询创建另一个视图,当以下条件为真时,该查询将标识有问题的“grp”: 我对这种情况的想法的原始描述: 从控件中选择grp,其中 “control_1.pvalue”| |“2nd”!=”控制_2.pvalue' 或 “control_1.pvalue”| |“3rd”!=”控制_3.pvalue' 或 “control_1.pvalue”| |“4th”!=”控制_4.pvalue' 或 “co

我想知道它是否足够向前,以下面的方式创建一个视图,我的尝试没有如预期的那样起作用

我正在尝试使用以下查询创建另一个视图,当以下条件为真时,该查询将标识有问题的“grp”:

我对这种情况的想法的原始描述:

从控件中选择grp,其中

“control_1.pvalue”| |“2nd”!=”控制_2.pvalue'

“control_1.pvalue”| |“3rd”!=”控制_3.pvalue'

“control_1.pvalue”| |“4th”!=”控制_4.pvalue'

“control_1.pvalue”| |“5th”!=”控制_5.pvalue'

“control_1.pvalue”| |“6th”!=”控制_6.pvalue'

我尝试了以下操作,希望M2能够返回:

从控件|1中选择grp,其中pvalue | | 2nd!=从控件_2中选择pvalue,grp=从控件_2中选择grp

但即使是这一基本步骤对我也不起作用

运行下面的代码片段以查看我尝试在其上执行此操作的表和视图

th,td{边框:1px纯黑色;} 创建表控件 id整数主键自动递增, grp文本, pname文本, pvalue文本; 控制 idgrppnamepvalue 1M1D1增值税 第二次增值税 3m1d3增值税3 4M1d4vat第四 5M1d5vat 5 6M1d6vat 6 7M2d1bin 8M2d2ban第二 9m2d3rd 10M2d4bin第四 11m2d5英寸5英寸 12分钟2分6秒 13M3d1haw 14M3d2haw第二 15M3d3ha第三 16M3d4haw第四 17M3d5haw第五 18M3d6haw 6 创建视图控件_1作为从控件中选择*,其中pname=d1; 控制单元1 idgrppnamepvalue 1M1D1增值税 7M2d1bin 13M3d1haw 创建视图控件_1作为从控件中选择*,其中pname=d2; 控制单元2 idgrppnamepvalue 第二次增值税 8M2d2ban第二 14M3d2haw第二 创建视图控件_1,作为从控件中选择*,其中pname=d3; 控制单元3 idgrppnamepvalue 3m1d3增值税3 9m2d3rd 15M3d3ha第三 -我也创建了以下内容,但我们可以从前三个视图中看到问题 创建视图控件_1作为从控件中选择*,其中pname=d4; 将视图控件_1创建为SELECT*FROM控件,其中pname=d5; 创建视图控件_1作为从控件中选择*,其中pname=d6;
我顿悟了,我能想出以下几点:

我创建了两个新视图,如下所示,现在我得到了我所期望的

create view dview as
SELECT
DISTINCT
grp,
(select pvalue from control_1 WHERE control.grp == grp) as d1,
(select pvalue from control_2 WHERE control.grp == grp) as d2,
(select pvalue from control_3 WHERE control.grp == grp) as d3,
(select pvalue from control_4 WHERE control.grp == grp) as d4,
(select pvalue from control_5 WHERE control.grp == grp) as d5,
(select pvalue from control_6 WHERE control.grp == grp) as d6
FROM control;
以下是此新视图的select语句:

select * from dview;
grp         d1          d2          d3          d4          d5          d6
----------  ----------  ----------  ----------  ----------  ----------  ----------
M1          vat         vat (2nd)   vat (3rd)   vat (4th)   vat (5th)   vat (6th)
M2          bin         ban (2nd)   bin (3rd)   bin (4th)   bin (5th)   bin (6th)
M3          haw         haw (2nd)   ha (3rd)    haw (4th)   haw (5th)   haw (6th)
select grp from dview_err;
grp
----------
M2
M3 
开始创建新视图:

create view dview_err as
SELECT * FROM dview WHERE
(d1 || " (2nd)" != d2) OR
(d1 || " (3rd)" != d3) OR
(d1 || " (4th)" != d4) OR
(d1 || " (5th)" != d5) OR
(d1 || " (6th)" != d6);
以下是此新视图的select语句:

select * from dview;
grp         d1          d2          d3          d4          d5          d6
----------  ----------  ----------  ----------  ----------  ----------  ----------
M1          vat         vat (2nd)   vat (3rd)   vat (4th)   vat (5th)   vat (6th)
M2          bin         ban (2nd)   bin (3rd)   bin (4th)   bin (5th)   bin (6th)
M3          haw         haw (2nd)   ha (3rd)    haw (4th)   haw (5th)   haw (6th)
select grp from dview_err;
grp
----------
M2
M3