วันพฤหัสบดีที่ ๑๐ พฤศจิกายน พ.ศ. ๒๕๕๔

SQLSERVER: Format Number with comma


-- ตัวอย่าง
SELECT CONVERT(varchar,CONVERT(money,1234567.89),1)

-- ทดสอบ SIMPLE SELECT
SELECT CONVERT(varchar,CONVERT(money,SUM(bcbill)),1)
FROM ARDebit
WHERE year(billdate) = 2011 and month(billdate) = 10

-- ทดสอบการลบกันระหว่าง 2 query
SELECT CONVERT(varchar,CONVERT(money,
(
(SELECT SUM(bcBill) FROM ARDebit WHERE Year(BillDate)=2011 and Month(BillDate) = 10)
-
(SELECT SUM(BcPayment) FROM ARCredit WHERE Year(ReceiptDate) = 2011 and MONTH(ReceiptDate) = 10)
)
),1)



เมื่อก่อนตอนเจอการตำนวณหลัก 10 ล้าน 100 ล้าน ต้องมานั่งเพ่งดูตัวเลขว่าเท่าไหร่กันแน่ หรือไม่งั้นก็ copy ไป excel พอตอนนี้สามารถสั่ง format ได้ พอมี comma กับจุดทศนิยมก็ง่ายขึ้นเยอะครับ

แต่ว่าพอ convert เป็น money แล้วทศนิยมมันปัดเป็น 2 ตำแหน่ง อันนี้ต้องระวังด้วยครับ


-- ทดสอบ ได้ผลลัพธ์ 1,234,567.90
SELECT CONVERT(varchar,CONVERT(money,1234567.8987),1)