2013-04-10 41 views
-3

表不同用户的合计值1得到MySQL和PHP

|-----|---------------|---------------------| 
| id | name   |   pid   | 
|-----|---------------|---------------------| 
| 1 | ram   |   2   | 
| 2 | rani   |   1   | 
| 3 | ram   |   3   | 
|-------------------------------------------| 

表2

|-----|---------------|---------------------| 
| pid | name   |   price  | 
|-----|---------------|---------------------| 
| 1 | soap   |   2000  | 
| 2 | towel  |   1333  | 
| 3 | bed   |   3000  | 
|-------------------------------------------| 

我需要导致这样下文表

|-----|---------------|---------------------| 
| id | name   |   price  | 
|-----|---------------|---------------------| 
| 1 | ram   |   4333  | 
| 2 | rani   |   2000  | 
|-------------------------------------------| 

回答

2
SELECT MIN(a.ID) ID, a.name, SUM(b.Price) Price 
FROM table1 a 
     INNER JOIN table2 b 
      ON a.PID = b.PID 
GROUP BY a.Name 

输出

╔════╦══════╦═══════╗ 
║ ID ║ NAME ║ PRICE ║ 
╠════╬══════╬═══════╣ 
║ 1 ║ ram ║ 4333 ║ 
║ 2 ║ rani ║ 2000 ║ 
╚════╩══════╩═══════╝