2013-01-24 54 views
-2

我有在獲得正確的查詢我需要的一些問題單查詢合併2個MySQL選擇到

SELECT tbl_participants.name, 
     tbl_transactions.consumer_rfid, 
     tbl_transactions.trans_price 
FROM tbl_participants, 
     tbl_transactions 
WHERE tbl_participants.id = tbl_transactions.trader_id 

我所擁有的是2簡單的表:一個存儲參與者(投資者/消費者)的另一個交易(形式交易者到消費者)。我想帶回了以下信息:交易員的名字,消費者的名稱和價格交易

tbl_participants已經ID(唯一),姓名(參加者) tbl_transactions已經trader_id(從上面的表中獲得),消費者的RFID(從上表)採取

(基於ID我的查詢應該返回交易者的名字),消費者的名字(基於RFID)和交易的價值

謝謝

+0

很難理解你想在這裏。好像你可以刪除'consumer_rfid'。它似乎也可以嘗試使用'UNION'。 – Kermit

+0

我希望它作爲表格顯示,表格的標題將是名稱|消費者名稱|價錢。工會會將數據放在上一個表格中,而不是在它旁邊。 – Adrian

+0

看起來第二個查詢與第一個查詢相同,只有SELECT中的字段更少。因此,您的第一個查詢已經包含您的第二個數據,因此無需「合併」 –

回答

0

單從閱讀評論的半野生的猜測:

SELECT tbl_participants.name AS consumer, 
     tbl_transactions.trans_price AS price 
FROM tbl_participants, 
     tbl_transactions 
WHERE tbl_participants.id = tbl_transactions.trader_id; 

我不能彌補你的name | consumer name | price的意思......

編輯:再過了些信息,這是我想出了:

SELECT p1.name AS name, 
     p2.name AS consumer_name, 
     t.trans_price AS price 
FROM tbl_participants p1, 
     tbl_participants p2, 
     tbl_transactions t 
WHERE p1.id = t.trader_id 
AND p2.card_rfid = t.consumer_rfid; 
+0

對不起,沒有解釋。表格的標題應顯示交易者,消費者和交易的價格。通常的查詢會帶回這些信息,但是爲消費者帶回rfid標籤,因爲它位於交易表內。我想要的是用參與者表中可以找到的消費者名稱(交易者和消費者都位於參與者表中)替換該rfid標籤 – Adrian

+0

無論是誰低估這一點,我也試圖幫助你,知道! @Adrian因爲你需要消費者ID ...它是'tbl_transactions.consumer_id'嗎? –

+0

交易員和消費者共享與任何給定點相同的tbl_participants,交易者可能是消費者,反之亦然 – Adrian

-1

試試這個:

SELECT tbl_participants.name AS consumer, 
      tbl_transactions.consumer_rfid, 
      tbl_transactions.trans_price 
    FROM tbl_participants, 
      tbl_transactions 
    WHERE tbl_participants.id = tbl_transactions.trader_id 

我不明白你的問題,你正在使用相同的兩個表。所以選擇可以沒有任何問題。

編輯如果您不希望consumer_rfid只是將其刪除。

SELECT tbl_participants.name AS consumer, 
    tbl_transactions.trans_price 
    FROM tbl_participants,tbl_transactions 
    WHERE tbl_participants.id = tbl_transactions.trader_id 
+0

這沒有幫助。我不會倒下,因爲這是OP的錯。 – Kermit

+0

@njk解釋你的評論。 –

+0

@Adrian是存儲在tbl_transaction中的交易者的名字?或者你有一個名爲tbl_trader的表? –