0

SUMクエリテーブルでクエリを取得する方法JOIN、私は2つのテーブルを持っています.私のテーブルはとlaporanですlaporan_pengeluaran.

テーブルラポラン

id  name    shell
9   loli    12000
10  ardi    24000
11  dian    5500

テーブル laporan_pengeluaran

id  laporan_id  harga
1   9           15000
2   9           29000
3   10          7500
4   10          5000
5   11          3000
6   11          3000

私の質問は、テーブル laporan の id/name でグループ化された結合テーブルで SUM を取得する方法です。したがって、以下のように結果を取得したいと考えています。

id  name    shell   harga
9   loli    12000   44000
10  ardi    24000   12500
11  dian    5500    6000

ありがとう。

4

4 に答える 4

5

2 つのテーブルを結合してsum(harga)、結果を取得できます。テーブルに常にlaporan値があることがわかっている場合は、次を使用できます。laporan_pengeluaranINNER JOIN

select l.id,
  l.name,
  l.shell,
  sum(lp.harga) harga
from laporan l
inner join laporan_pengeluaran lp
  on l.id = lp.laporan_id
group by l.id, l.name, l.shell

デモで SQL Fiddle を参照してください

テーブルに欠損laporan値がある可能性がある場合は、次を使用します。laporan_pengeluaranLEFT JOIN

select l.id,
  l.name,
  l.shell,
  sum(lp.harga) harga
from laporan l
left join laporan_pengeluaran lp
  on l.id = lp.laporan_id
group by l.id, l.name, l.shell

デモで SQL Fiddle を参照してください

結果は次のとおりです。

| ID | NAME | SHELL | HARGA |
-----------------------------
|  9 | loli | 12000 | 44000 |
| 10 | ardi | 24000 | 12500 |
| 11 | dian |  5500 |  6000 |
于 2013-01-04T19:05:52.130 に答える
0

このクエリを試してください

SELECT
    l.id,
    l.name,
    IFNULL(lp.TCount,0) as Total
FROM laporan as l   
LEFT JOIN (
            SELECT 
                laporan_id,
                SUM(harga) as TCount
            FROM    laporan_pengeluaran
            GROUP BY laporan_id
            ) as lp ON lp.laporan_id = l.id
于 2013-01-04T19:08:00.890 に答える
0
SELECT
  laporan.id AS id,
  laporan.name AS name,
  laporan.shell AS shell,
  IFNULL(SUM(laporan_pengeluaran.harga),0) AS harga
FROM laporan
LEFT JOIN laporan_pengeluaran ON laporan.id=laporan_pengeluaran.laporan_id
于 2013-01-04T19:06:44.373 に答える
0

これを試して:

SELECT l.id, l.name, l.shell, SUM(lp.harga) harga 
FROM laporan l 
LEFT JOIN laporan_pengeluaran lp ON l.id = lp.laporan_id 
GROUP BY l.id; 

このSQL FIDDLE DEMOをチェックしてください

出力:

| ID | NAME | SHELL | HARGA |
-----------------------------
|  9 | loli | 12000 | 44000 |
| 10 | ardi | 24000 | 12500 |
| 11 | dian |  5500 |  6000 |
于 2013-03-02T07:05:17.893 に答える