Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

एसयूएम और ग्रुप बाय के साथ टी-एसक्यूएल अपडेट

अगर यह क्वेरी आपकी इच्छित जानकारी लौटाती है:

SELECT *, LINE_TOTAL = SUM(l.LINE_TOTAL) OVER 
    (PARTITION BY l.IC_PO_HEADER, l.RELEASE_NUMBER)
  FROM dbo.PO_HEADER AS h
  INNER JOIN dbo.PO_LINE AS l
  ON h.IC_PO_HEADER = l.IC_PO_HEADER 
  AND h.RELEASE_NUMBER = l.RELEASE_NUMBER;

तो शायद यह वह अद्यतन क्वेरी है जो आप चाहते हैं:

;WITH x AS
(
  SELECT h.TOTAL, lt = SUM(l.LINE_TOTAL) OVER 
    (PARTITION BY l.IC_PO_HEADER, l.RELEASE_NUMBER)
  FROM dbo.PO_HEADER AS h
  INNER JOIN dbo.PO_LINE AS l
  ON h.IC_PO_HEADER = l.IC_PO_HEADER 
  AND h.RELEASE_NUMBER = l.RELEASE_NUMBER
)
UPDATE x SET TOTAL = lt;

मुझे गॉर्डन से सहमत होना है, आपका समूह बहुत अजीब लगता है। मुझे यकीन नहीं है कि मैंने इसे सही किया है (यही कारण है कि मैं दृढ़ता से अनुशंसा करता हूं कि आप पहले चयन करें)।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डेटाबेस से डेटा को asp.net MVC3 में DropDownList में प्रदर्शित करें

  2. SQL सर्वर में किसी तालिका के लिए सभी जाँच और विदेशी कुंजी बाधाओं को कैसे अक्षम करें (T-SQL उदाहरण)

  3. एसक्यूएल में एक ही आईडी के साथ कई पंक्तियों को कैसे जोड़ना है?

  4. SQL सर्वर 2008 में वीकनो का उपयोग करके छह सप्ताह की रविवार की गिनती कैसे प्राप्त करें?

  5. SQL सर्वर में एक तारीख फ़्लोर करें