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
对同一个表中的两个SELECT语句执行SQLITE中的JOIN_Sqlite - Fatal编程技术网

对同一个表中的两个SELECT语句执行SQLITE中的JOIN

对同一个表中的两个SELECT语句执行SQLITE中的JOIN,sqlite,Sqlite,这就是我在SQLITE中创建示例表的方式 ID NAME AGE ADDRESS SALARY 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45

这就是我在SQLITE中创建示例表的方式

ID  NAME    AGE ADDRESS     SALARY
1   Paul    32  California  20000.0
2   Allen   25  Texas   15000.0
3   Teddy   23  Norway  20000.0
4   Mark    25  Rich-Mond   65000.0
5   David   27  Texas   85000.0
6   Kim 22  South-Hall  45000.0
7   Paul    32  California  20000.0
8   Allen   25  Texas   15000.0
9   Teddy   23  Norway  20000.0
我想要实现的是在我的SQLITE表上连接这两个查询

select AGE, count(*)  as SALARYLESSTHAN45 from company where salary < 45000 group by salary 

select AGE, count(*)  as SALARYMORETHAN45 from company where salary > 45000 group by salary 
我尝试了以下方法

select AGE, count(*)  as SALARYLESSTHAN45 from company where salary < 45000 group by salary  ) T1
INNER JOIN
select AGE, count(*)  as SALARYMORETHAN45 from company where salary > 45000 group by salary  ) T2
ON T1.AGE = T2.AGE
但是不能让它工作


有人可以分享一个如何在SQLITE中实现这一点的示例吗?

两个不同表上的连接如下所示:

SELECT ... FROM Tab1 JOIN Tab2 ON ...
要对查询结果执行联接,必须用子查询替换表名:

select AGE,
       SALARYLESSTHAN45,
       SALARYMORETHAN45
from (select AGE,
             count(*) as SALARYLESSTHAN45
      from company
      where salary < 45000
      group by salary)
join (select AGE,
             count(*) as SALARYMORETHAN45
      from company
      where salary > 45000
      group by salary)
using (AGE);

两个不同表上的联接如下所示:

SELECT ... FROM Tab1 JOIN Tab2 ON ...
要对查询结果执行联接,必须用子查询替换表名:

select AGE,
       SALARYLESSTHAN45,
       SALARYMORETHAN45
from (select AGE,
             count(*) as SALARYLESSTHAN45
      from company
      where salary < 45000
      group by salary)
join (select AGE,
             count(*) as SALARYMORETHAN45
      from company
      where salary > 45000
      group by salary)
using (AGE);

这些查询没有意义,因为每个组都有一个随机年龄。这些查询没有意义,因为每个组都有一个随机年龄。非常感谢!!!不知道为什么我要这么努力才能完成这件事。下面是一个类似的问题……在这个场景中,我如何做一个完整的外部连接,并用say zero替换null要提问,请单击ask question。非常感谢!!!不知道为什么我要这么努力才能完成这件事。下面是一个类似的问题……在这个场景中,我如何进行完整的外部联接并用say zero替换null要提问,请单击ask question。