[英]MySQL query printing double records
在所有記錄sales
和purchase
表中只需輸入一次。 我已經仔細檢查過了。 但是,我希望以這樣一種方式組合這兩個表,以便完全獲取兩個表。 這是我的查詢記錄, 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'
這是我的查詢, sales
和purchase
表的結果
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.