Tags:
SQL Server

ใน SQL Server 2012 มีการเพิ่มเติมฟังก์ชั่นแบบบิวต์อินใหม่อีก 14 ฟังก์ชัน โดยแบ่งได้เป็น 4 กลุ่มดังนี้

แปลงประเภทข้อมูล

  • PARSE แปลงข้อความเป็นวันที่เวลาหรือตัวเลข หากแปลงไม่สำเร็จจะ error
  • TRY_PARSE เช่นเดียวกับ PARSE แต่จะได้ค่า NULL หากแปลงไม่สำเร็จ
  • TRY_CONVERT เช่นเดียวกับ CONVERT เดิม แต่จะได้ค่า NULL หากแปลงไม่สำเร็จ

วันที่เวลา

ตรรก

  • CHOOSE เลือกรายการโดยระบุลำดับ
  • IIF เงื่อนไขแบบ inline

ข้อความ

  • CONCAT เชื่อมข้อความ สามารถมีค่า NULL ได้
  • FORMAT จัดรูปแบบให้กับวันที่เวลาหรือตัวเลข

รายละเอียดสำหรับการใช้งานแต่ละฟังก์ชันสามารถอ่านเพิ่มเติมได้ที่ MSDN

Tags:
SQL Server

การคิวรีข้อมูลแบบแบ่งหน้า เช่น ต้องการแถวข้อมูลในหน้าที่ 3 เมื่อแบ่งหน้าแสดงผลครั้งละ 50 แถว
ซึ่งหมายถึงต้องการแถวที่ 101 ถึง 150
ใน SQL Server เวอร์ชั่นก่อนหน้า 2012 จะต้องใช้ทักษะ เทคนิคในการเขียนคิวรีค่อนข้างมาก ตัวอย่างเช่น

SELECT C.*
FROM (
  SELECT
    ROW_NUMBER() OVER (ORDER BY CustomerID ASC) AS RowNum,
    CustomerID
  FROM Sales.Customer
) AS C
WHERE C.RowNum BETWEEN 101 AND 150;

แต่ใน SQL Server 2012 ได้มีเพิ่มเติมวลีใหม่คือ OFFSET-FETCH ตามมาตรฐาน SQL:2011
ทำให้การคิวรีแบบแบ่งหน้า เป็นเรื่องที่ง่ายดายขึ้นดังตัวอย่างนี้