2011-01-04 16 views
6

başka tablodan alınan açık değerler ve verilerin karışımını eklemek için: açık değerlerBir masanın</p> <p>Yöntem 1 veri eklemek için iki yol biliyorum

INSERT INTO table 
('field1', 'field2', 'field3') 
VALUES ('value1', 'value2', 'value3') 

Yöntem 2: Başka bir veri kopyalama tablo

INSERT INTO table 
SELECT 'field1', 'field2', 'field3' 
FROM otherTable 

Her ikisi de yalnızca tüm alanlar aynı şekilde doldurulursa çalışır. Aynı satırda açık değerler ve kopyalanan verilerin bir karışımını eklemem gerekiyor. Mümkün mü?

cevap

9

Evet, öyle. (Yöntem 2 örneğinizde, bu, diğer değerleri tablodan değil, açık değerler ekleyeceğini unutmayın)

örn.

INSERT SomeTable(FieldA, FieldB, FieldC) 
SELECT FieldA, FieldB, 'Explicit Value' 
FROM SomeOtherTable 
+0

Excellent! Çok teşekkürler :) –

+0

Bu şekilde birden fazla satır eklemek için bir yolu var mı? Yani, ("a", "b", FieldA), "(" c "," d ", FieldA) eklemek istiyorum ... – Zxaos

+1

@Zxaos - evet, SQL 2008'den itibaren bir Satır aracılığıyla bunu yapabilirsiniz Yapıcı: http://sqlblog.com/blogs/peter_debetta/archive/2007/12/06/row-constructor-or-table-valued-parameter.aspx – AdaTheDev

İlgili konular