我正在尝试修改一个查询,以添加一个值必须为"fail“的列,如果另一个表中具有相同id的任何值在某个列中都为"fail”。
有3个表,表1包含4行(类别)的财务数据(固定收益、股票、评级、列表)及其systemId。
表2包含1000多行财务数据,这些数据可能属于这4个类别中的任何一个。表2还具有名为STATUS的行,该行可能包含值:"running“、"fail”或"standby“。
表3包含关于数据集的一般信息,并且具有id和systemId的值。
我想添加一个名为STATE的列到TABLE1(categories),如果具有相同systemId的任何行包含值"fail“或"standby”,则该列包含"fail“或"standy”,并且仅当具有相同systemId (table2)的所有行在其状态列(table2)中具有"running“时才显示"running”。
表1
category systemId ???STATE???
fixed income 1 ?
listings 2 ?
ratings 3 ?
equities 4 ?
表2
ID STATUS
45421158 failed
2121158 running
9464548888 running
454548888 standby
9948158 running
78748158 running
TABLE3
id **systemId**
45421158 1
98721158 1
454548888 2
6888888 2
78748158 3
9978158 3
我尝试了这么多不同的连接和子查询,但都没有成功。我是一个UI开发人员,没有访问数据库,只有通过缓存运行在java上的样本,所以我不能添加新的表或任何类似的东西,它必须是1个查询,所以我可以修改资源。
提前感谢您,您将合法地拯救我的生命!
https://stackoverflow.com/questions/56724505
复制相似问题