PostgreSQL destekliyor CREATE TABLE ASve SELECT INTOher ikisini de ne zaman kullanacağım?
CREATE TABLE AS- bir sorgunun sonuçlarından yeni bir tablo tanımlama
CREATE TABLE ASbir tablo oluşturur ve birSELECTkomutla hesaplanan verilerle doldurur . Tablo sütunları,SELECT(yeni sütun adlarının açık bir listesini vererek sütun adlarını geçersiz kılabilirsiniz) öğesinin çıktı sütunlarıyla ilişkili adlara ve veri türlerine sahiptir .
CREATE TABLE ASbir görünüm oluşturmak için biraz benzerlik gösterir, ancak gerçekten farklıdır: yeni bir tablo oluşturur ve yeni tabloyu başlangıçta doldurmak için sorguyu yalnızca bir kez değerlendirir. Yeni tablo, sorgunun kaynak tablolarında yapılan sonraki değişiklikleri izlemez. Buna karşılık, bir görünümSELECTsorgulandığında tanımlayıcı ifadesini yeniden değerlendirir .
Ve sonra.
SELECT INTO- bir sorgunun sonuçlarından yeni bir tablo tanımlama
SELECT INTOyeni bir tablo oluşturur ve bir sorgu tarafından hesaplanan verilerle doldurur. Veriler normalde olduğu gibi istemciye döndürülmezSELECT. Yeni tablonun sütunları, öğesinin çıktı sütunlarıyla ilişkili adlara ve veri türlerine sahiptirSELECT.