Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Perbarui Pernyataan menggunakan Gabung dan Grup Oleh

Anda dapat mencoba menempatkan grup di dalam subquery, lalu bergabung dengan "JobOrderID", seperti ini:

UPDATE J
SET J.StatusID = A.statusId
FROM MKT_JobOrder J
INNER JOIN (
    SELECT J.JobOrderID
        , CASE 
            WHEN SUM(DUV.VendorDUQuantity) = SUM(RD.InvoiceQuantity)
                THEN 1
            ELSE J.StatusID
            END AS statusId 
    FROM PLN_DU_Vendor DUV
    INNER JOIN ENG_Release R ON R.ReleaseID = DUV.ReleaseID
    INNER JOIN ENG_DU_Header H ON H.ReleaseID = R.ReleaseID
                               AND DUV.DUID = H.DUID
    INNER JOIN MKT_JobOrder J ON J.JobOrderID = R.JobOrderID
    INNER JOIN MKT_CustomerOrder CO ON CO.OrderID = J.OrderID
    LEFT JOIN PMT_RFDHeader RH ON RH.JobOrderID = J.JobOrderID
    LEFT JOIN PMT_RFDDetail RD ON RD.RFDID = RH.RFDID
                               AND RD.DUID = DUV.DUID
    WHERE CO.OrderID = 100
    GROUP BY J.JobOrderID
           , J.StatusID
    ) A ON J.JobOrderID = A.JobOrderID


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara membangun kembali tampilan di SQL Server 2008

  2. Menggunakan StringWriter untuk Serialisasi XML

  3. Cara Menghapus Header Kolom saat Mengirim Hasil Kueri melalui Email di SQL Server (T-SQL)

  4. Bagaimana cara menghitung perbedaan jam (desimal) antara dua tanggal di SQL Server?

  5. Kesalahan Login SQL Server:Login gagal untuk pengguna 'NT AUTHORITY\SYSTEM'