[ASK] penggunan fungsi query 'sum' dengan 'order by' di Mysql


Status
Not open for further replies.

Iqbal Salman

Beginner 1.0
Selamat siang

mohon maaf nih sebelumnya,saya masih baru..saya mau minta bantuannya buat para master, saya punya masalah yang belum selesai dari query yang saya buat. jadi masalahnya kaya gini:

saya punya satu tabel namanya 'tbl_invoice' kurang lebih isinya kaya gini:
Code:
BranchId    InvoiceNumber    RvNumber    Status
202    SH-005/03/16    00001/08/TM/SH/03/16    1
202    SH-005/03/16    00002/08/TM/SH/03/16    1
202    SH-005/03/16    CATMSH/0024/01/16    1
202    SH-009/01/16    CATMSH/0027/01/16    1
202    SH-009/01/16    CATMSH/0024/01/16    1
203    HW-010/03/16    CATMHW/0033/03/16    1
203    HW-010/03/16    CATMHW/0038/03/16    1
203    HW-010/03/16    CATMHW/0050/04/16    1
204    TM-017/01/16    JVTMTM/0001/03/16    1
204    TM-017/01/16    CATMTM/0045/01/16    1
204    TM-017/01/16    MATMTM/0015/01/16    1

nah dari tabel itu saya mau bikin report jumlah 'status' berdasarkan 'InvoiceNumber' dan 'BranchId',
saya mau hasilnya jadi kaya gini.

Code:
BranchId    TotalStatus
202                 2
203                 1
204                 1

jadi,InvoiceNumber yg udah punya status '1' yang lainnya gak di anggap,kecuali dengan invoiceNumber yg berbeda.kaya contoh di atas invoiceNumber 'SH-005/03/16' punya tiga RvNumber dan semua statusnya '1',nah saya maunya cuma dihitung 1 aja baru dijumlahin dengan invoiceNumber yang lainnya yang statusnya juga '1'.

saya udah bikin querynya kaya gini:

Code:
SELECT branchId, SUM(status) AS TotalStatus FROM tbl_invoice GROUP BY branchId,invoiceNumber

tapi tetep aja malah statusnya ngejumlahin semua.itu gimana ya?munngkin ada diantara para master yang bisa bantuin saya buat nyelesein masalah ini,hehe
mohon bantuannya ya Tuan,soalnya saya udah mentok,hehe

terimakasih sebelumnya
wassalam
 

Novan

Poster 2.0
Bisa dicoba ini Tuan :

Code:
SELECT DISTINCT BranchId, SUM(status) AS TotalStatus FROM (SELECT DISTINCT InvoiceNumber, BranchId, status FROM tbl_invoice) AS tbl_invoices GROUP BY BranchId, status

Mdh2an sesuai Result Query yg dimaksud. CMIIW
 
Status
Not open for further replies.

Top