Database 如何从sqlite的两个表中获取数据并对数据进行排序

Database 如何从sqlite的两个表中获取数据并对数据进行排序,database,sqlite,android-sqlite,Database,Sqlite,Android Sqlite,我有两张桌子 收入 费用 问题是我想查询两个表中的所有数据 SELECT income.date AS IN_DATE, expense.date AS EX_DATE FROM income, expense 我得到的奇怪结果数据是db的两倍,如你们所见 你可以试试这个 我如何才能得到不同的结果而不是双重的,最后想问的是,我不想从两个表中获取数据并按日期降序排序。您需要匹配相同的ID,否则SQL将只输出任何可能的组合 SELECT income.date AS IN_DATE, expen

我有两张桌子

收入

费用

问题是我想查询两个表中的所有数据

SELECT income.date AS IN_DATE, expense.date AS EX_DATE FROM income, expense 
我得到的奇怪结果数据是db的两倍,如你们所见

你可以试试这个


我如何才能得到不同的结果而不是双重的,最后想问的是,我不想从两个表中获取数据并按日期降序排序。

您需要匹配相同的ID,否则SQL将只输出任何可能的组合

SELECT income.date AS IN_DATE, expense.date AS EX_DATE FROM income, expense WHERE income.id LIKE expense.id

您需要匹配相同的ID,否则SQL将只输出任何可能的组合

SELECT income.date AS IN_DATE, expense.date AS EX_DATE FROM income, expense WHERE income.id LIKE expense.id
我的猜测是你想要所有人:

这将为您提供一个结果集,其中包含两个表中的行,并带有每行来自哪个表的标识符

如果使用子查询,则可以按日期排序并执行其他操作:

select ie.*
from (select 'income' as which, id, title, date
      from income
      union all
      select 'expense' as which, id, title, date
      from expense
     ) ie
order by date desc;
我的猜测是你想要所有人:

这将为您提供一个结果集,其中包含两个表中的行,并带有每行来自哪个表的标识符

如果使用子查询,则可以按日期排序并执行其他操作:

select ie.*
from (select 'income' as which, id, title, date
      from income
      union all
      select 'expense' as which, id, title, date
      from expense
     ) ie
order by date desc;

简单的SELECT会对两列进行叉积,分别为_DATE和exu DATE。因此,您可以从这两列中获得所有可能的值组合。内部连接income ON expense.id=income.id或WHERE income.id==expense.id应该可以做到这一点。

您的简单选择会与_DATE、EX_DATE中的两列进行叉积。因此,您可以从这两列中获得所有可能的值组合。expense.id=income.id或WHERE income.id==expense.id上的内部联接income应该起作用。

从两个表中查询数据-如何?你这是什么意思?你正在做一个交叉连接两者之间,这就是为什么你做重复的结果。是否需要联合?如何从两个表中查询数据?你这是什么意思?你正在做一个交叉连接两者之间,这就是为什么你做重复的结果。你想要一个联盟吗?请问你想在我在SQLite上做的,但后来我把WHERE改成了大号字母,忘记了E-。-请你想在我在SQLite上做的,但后来我把WHERE改成了大号字母,忘记了E--