sp_describe_first_result_set ของ system stored procedure เป็นเครื่องมือที่มีประสิทธิภาพใน SQL serveless pools มีหน้าที่ส่งคืนข้อมูล metadata ของชุดผลลัพธ์การ query สามารถใช้เพื่อดึงข้อมูลเกี่ยวกับคอลัมน์ ชนิดข้อมูล และข้อมูลเมตาอื่นๆ ของ query ก่อนที่จะดำเนินการ query ซึ่งจะประโยชน์อย่างยิ่งเมื่อทำงานร่วมกับ Data Lake ขนาดใหญ่ที่อาจไม่ทราบถึงโครงสร้างของข้อมูลมาก่อน
ต่อไปนี้คือตัวอย่างวิธีใช้ sp_describe_first_result_set stored procedure เพื่อดึง metadata ของไฟล์ที่จัดเก็บไว้ใน Data Lake:
| 12345678910 | EXECsp_describe_first_result_set N'SELECT *FROM OPENROWSET( BULK ''datalake/*.csv'', DATA_SOURCE = ''storage', FORMAT = ''CSV'', PARSER_VERSION = ''2.0'', HEADER_ROW = TRUE ) ASr' |
ซึ่งจะส่งคืนชุดผลลัพธ์ดังต่อไปนี้:
| 123456789 | ColumnName| Type Name| MaxLength | Precision| Scale | Nullable--------------------------------------------------------------CustomerID | int| 4 | 10 | 0 | NoName| nvarchar | 50 | | | NoAddress | nvarchar | 100 | | | NoCity | nvarchar | 50 | | | NoState | nvarchar | 50 | | | NoZip | nvarchar | 10 | | | NoPhoneNumber | nvarchar | 20 | | | No |
โปรดทราบว่านี่เป็นเพียงตัวอย่างง่ายๆ ที่มีชุดย่อยของข้อมูลที่มีอยู่จาก 4 metadata จริงที่จะส่งคืนจะขึ้นอยู่กับโครงสร้างของข้อมูลที่จัดเก็บไว้ใน Data Lake อย่างไรก็ตาม sp_describe_first_result_set stored procedure เป็นตัวช่วยที่สะดวกในการเรียกข้อมูลเหล่านี้เพื่อทำความเข้าใจคอลัมน์และชนิดข้อมูลที่ใช้ได้
สามารถดูเอกสารฉบับเต็มได้ที่นี่