2016-12-17 65 views
0

我目前遇到問題,我在多個表上運行查詢以獲取結果,但它們都被視爲獨立。我嘗試了幾種將它們結合的方法,但由於我的SQL知識有限,我似乎無法得到我想要發生的事情。MYSQL將結果合併到單個項目中進行顯示

SELECT DISTINCT t.*, s.quantity, s.rrp, ts.thumbnail, ts.bigpic, t.rating 
       FROM tyres t 
       INNER JOIN stocklevels s 
       ON t.stockcode = s.stockcode 
       LEFT JOIN tyre_treads ts  
       ON t.treadid = ts.recid 
       LEFT JOIN reseller r 
       ON s.city=r.recid 
       WHERE s.quantity> 0 AND s.rrp > 0 

我試着添加GROUP BY t.recid和一些其他的基本解決方案,但這似乎並沒有工作。我添加了一些可能有所幫助的圖片。

enter image description here

正如你可以看到底部東洋輪胎是一樣的,只是用不同的城市和數量。

他們在網站上。

enter image description here

我想他們如此結合起來,他們說的股票至少6個,只在網站上曾經展示。

回答

3

只要SQK resukt中至少有一列包含不同的值(例如您的示例中的「同一個」輪胎的城市,則group by將不起作用,您必須調整SQL語句它只會選擇具有相同值的列,尤其是,您應該從sql中刪除t.*並將所有列命名(然後您將不再需要區分) 然後,您總結數量以得到這列通緝。

SELECT r.recid, sum(s.quantity), s.rrp, ts.thumbnail, ts.bigpic, t.rating 
      FROM tyres t 
      INNER JOIN stocklevels s 
      ON t.stockcode = s.stockcode 
      LEFT JOIN tyre_treads ts  
      ON t.treadid = ts.recid 
      LEFT JOIN reseller r 
      ON s.city=r.recid 
      WHERE s.quantity> 0 AND s.rrp > 0 
      GROUP BY recid 
+0

三江源這似乎工作,我唯一的問題是數量不再顯示,我怎麼能拉加值? – theHussle

+0

實際上排序它。歡呼 – theHussle

相關問題