Aracılığıyla paylaş


EDGE_ID_FROM_PARTS (Transact-SQL)

Şunlar için geçerlidir: SQL Server 2017 (14.x) ve sonraki sürümleri Microsoft Fabric'teAzure SQL VeritabanıAzure SQL Yönetilen Örneği SQL veritabanı

Belirli bir nesne kimliği ve grafik kimliği için kenar kimliğinin karakter gösterimini (JSON) döndürür.

Sözdizimi

EDGE_ID_FROM_PARTS ( object_id, graph_id )

Arguments

object_id

Kenar tablosunun nesne kimliğini temsil eden bir int .

graph_id

Bir kenar için grafik kimliği için bigint değeri.

Dönüş değeri

Kenar kimliğinin nvarchar(1000) karakter gösterimini (JSON) döndürür. Sağlanan bağımsız değişkenlerden herhangi biri geçersizse dönüş değeri NULL olabilir.

Açıklamalar

  • tarafından EDGE_ID_FROM_PARTS döndürülen kenar kimliğinin karakter gösterimi (JSON), uygulamaya özgü bir ayrıntıdır ve değiştirilebilir.
  • EDGE_ID_FROM_PARTS , kenar kimliğinin uygun karakter gösterimini (JSON) oluşturmanın desteklenen tek yoludur.
  • EDGE_ID_FROM_PARTS , kaynak verilerin tamsayı veri türüne sahip uygun bir doğal veya vekil anahtara sahip olduğu durumlarda, uç tabloya toplu veri eklenmesini içeren durumlarda kullanışlıdır.
  • 'den EDGE_ID_FROM_PARTS döndürülen değer, kenar tablosundaki $edge_id sütunu doldurmak için kullanılabilir.
  • Bir kenar kimliğinin geçerli karakter gösterimini (JSON) döndürmek için EDGE_ID_FROM_PARTS parametresinin object_id mevcut bir kenar tablosuna karşılık gelen olması gerekir. graph_id parametresi geçerli bir tamsayı olabilir, ancak bu kenar tablosunda mevcut olması gerekmez. Bu denetimlerden herhangi biri başarısız olursa NULL EDGE_ID_FROM_PARTS döndürür.

Örnekler

Aşağıdaki örnekte, azure depolama hesabında depolanan bir CSV dosyasından ve dataset_key sütunlarını almak için rating kullanılır. Ardından, CSV dosyasından kullanarak $edge_id'nin karakter gösterimini EDGE_ID_FROM_PARTS oluşturmak için kullanırdataset_key. Ayrıca $from _id (Kişi düğümü tablosu için) ve $to_id değerlerinin (Restoran düğüm tablosu için) uygun karakter gösterimlerini oluşturmak için NODE_ID_FROM_PARTS iki kez kullanır. Bu dönüştürülen veriler daha sonra (toplu) kenar tablosuna likes eklenir.

INSERT INTO likes($edge_id, $from_id, $to_id, rating)
SELECT EDGE_ID_FROM_PARTS(OBJECT_ID('likes'), dataset_key) as from_id
, NODE_ID_FROM_PARTS(OBJECT_ID('Person'), ID) as from_id
, NODE_ID_FROM_PARTS(OBJECT_ID('Restaurant'), ID) as to_id
, rating
FROM OPENROWSET (BULK 'person_likes_restaurant.csv',
    DATA_SOURCE = 'staging_data_source',
    FORMATFILE = 'format-files/likes.xml',
    FORMATFILE_DATA_SOURCE = 'format_files_source',
    FIRSTROW = 2) AS staging_data;
;

Ayrıca bakınız