Kayıtlı yordamımda birleştirme deyimi yapıyorum. Güncellemeler ve ekler sırasında satırları saymaya ihtiyacım var. Güncellenmiş satırları (hem güncelleştirme hem de ekleme için) nasıl değiştirebileceğimi öğrenmek için ortak bir değişken kullanırsam, bu güncelleştirme güncellememde aldığım sayıdır ve bu benim eklediğim sayıdır. Lütfen bana daha iyi bir yol verinSQL Server Birleştirme deyimi
5
A
cevap
8
Eylem türünü ve ardından OUTPUT
sözdizimini $action
sütununda tutmak için bir tablo değişkeni oluşturabilirsiniz. Veri hareket sütuna saklayabilirsiniz neler
Örnek
/*Table to use as Merge Target*/
DECLARE @A TABLE (
[id] [int] NOT NULL PRIMARY KEY CLUSTERED,
[C] [varchar](200) NOT NULL)
/*Insert some initial data to be updated*/
INSERT INTO @A
SELECT 1, 'A' UNION ALL SELECT 2, 'B'
/*Table to hold actions*/
DECLARE @Actions TABLE(act CHAR(6))
/*Do the Merge*/
MERGE @A AS target
USING (VALUES (1, '@a'),(2, '@b'),(3, 'C'),(4, 'D'),(5, 'E')) AS source (id, C)
ON (target.id = source.id)
WHEN MATCHED THEN
UPDATE SET C = source.C
WHEN NOT MATCHED THEN
INSERT (id, C)
VALUES (source.id, source.C)
OUTPUT $action INTO @Actions;
/*Check the result*/
SELECT act, COUNT(*) AS Cnt
FROM @Actions
GROUP BY act
İade
act Cnt
------ -----------
INSERT 3
UPDATE 2
İlgili konular
- 1. SQL Server - güncelleştirirken iç birleştirme
- 2. SQL Server BİRLEŞTİRME + Katılma diğer tabloları
- 3. sql SQL deyimi .net
- 4. GÜNCELLEME t-SQL deyimi
- 5. PowerShell SQL deyimi
- 6. SQL Server
- 7. SQL deyimi sonuçları Ben bir SQL deyimi var
- 8. SQL Server DURUM İfade
- 9. SQL Server birleştirme çoğaltması - From Sütun hariç Çoğaltma
- 10. SQL sunucusu: iki sayısal sütunun değerlerini birleştirme
- 11. SQL Server
- 12. Sql Server
- 13. [SQL Server]
- 14. SQL Server
- 15. SQL Server
- 16. SQL Server
- 17. SQL Server
- 18. SQL Server
- 19. SQL Server:
- 20. SQL Server
- 21. SQL Server
- 22. Bu SQL deyimi neden çalışmıyor?
- 23. SQL Delete Deyimi, bir dataGridView
- 24. SQL deyimi oluşturulurken hata oluştu
- 25. SQL Server düzenli ifade kısıtlaması
- 26. SQL Id birleştirme
- 27. karmaşık iç birleştirme sql
- 28. Verileri SQL Server'da birleştirme
- 29. T SQL güncelleştirme 1 birleştirme N
- 30. SQL Select deyimi - Ben :) çalışıyor normal select deyimi var
.. i yerleştirilir kaç satır bilmek istiyorsanız Yani, ben bazı kısıtlama ile tablo sorgulamak gerekir sağa, bunun için wat verisinin insert eklendiğinde sütun başlatabileceğini bilmem gerekiyor mu? Güncelleme ne zaman oldu? –
'@ l_ins_row = COUNT (*)' dan @ action nerede act = 'inserted' ' –
gibi her işlemin sayısını almam gerekiyor gibi –