sql >> Databasteknik >  >> RDS >> Mysql

MYSQL kombinerar vy av två tabeller med olika antal inmatningsposter

Du menade att skapa en förening av SALE och EXPENSE men det slutade med att skapa en join. Du nämnde att data från SALE är OK , men det är inte sant heller.

Se denna handledning för att lära dig lite om sammanfogningar. Din fråga lyder ungefär så här:

select Sale.Date,Sale.Description,Expense.Description,Sale.Amount,Expense.Amount 
from sale,expense 
where Sale.Date = Expense.Date and
Expense.Date='2014-09-01';

Detta är syntaxen för en join ungefär som den i exemplet i länken ovan.

Det du behöver utföra är en UNION operation på raderna i båda tabellerna. Se [denna handledning] på UNION operationer i MySQL. Frågan du behöver är nedan:

select Sale.Date as Date,Sale.Description as SaleDescription,      
null as ExpenseDescription, Sale.Amount as SaleAmount, null as ExpenseAmount
from Sale where Sale.Date ='2014-09-01'
UNION ALL
select Expense.Date as Date, null as SaleDescription,      
Expense.Description as ExpenseDescription, null as SaleAmount, Expense.Amount as ExpenseAmount
from Expense where Expense.Date ='2014-09-01';



  1. NULL vs. "oändlighet" i PostgreSQL-intervalltyper

  2. Filtrera resultat efter datum i tidsstämpelfältet

  3. Lägg till och länka mysql-bibliotek i en cmakelist.txt

  4. skicka array till oracle-proceduren