簡體   English   中英

MySQL查詢打印雙記錄

[英]MySQL query printing double records

在所有記錄salespurchase表中只需輸入一次。 我已經仔細檢查過了。 但是,我希望以這樣一種方式組合這兩個表,以便完全獲取兩個表。 這是我的查詢記錄, timestamp列具有mysql DATE格式

Select 
    sales.ID as sid,
    sales.saleHatsh,
    sales.timestamp as sdate,
    sales.gatePass as sGP,
    sales.pname as sPN,
    sales.description as sDES,
    sales.balance as sbal, 
    purchase.ID as pid,
    purchase.purchaseHatsh,
    purchase.timestamp as pdate,
    purchase.gatePass as pGP,
    purchase.pname as pPN,
    purchase.description as pDES,
    purchase.balance as pbal 
from sales,purchase 
where sales.timestamp='2013-11-11' OR purchase.timestamp='2013-11-11'

這是我的查詢, salespurchase表的結果 查詢結果 Sales表只有2個記錄器 在此處輸入圖片說明

采購表只有4台錄像機 在此處輸入圖片說明

發生的事情是您沒有以任何方式加入這些表。 因此您將從這些表中獲取所有可能的匹配項。 查看這些列,我不認為您想加入,但可能您想要一個UNION

SELECT 
  sales.ID AS id,
  sales.saleHatsh AS hatsch,
  sales.TIMESTAMP AS date,
  sales.gatePass AS GatePass,
  sales.pname AS pname,
  sales.description AS Description,
  sales.balance AS balance,
  'SALE' AS transanctionType
FROM sales
WHERE sales.TIMESTAMP = '2013-11-11'
UNION 
SELECT 
  purchase.ID,
  purchase.purchaseHatsh,
  purchase.TIMESTAMP,
  purchase.gatePass,
  purchase.pname,
  purchase.description,
  purchase.balance,
  'PURCHASE'
FROM purchase
WHERE purchase.TIMESTAMP = '2013-11-11'

我添加了一列“ transactionType”供您識別哪些是銷售或購買。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM