Monday, November 27, 2017

แก้ปัญหาไม่แสดงผลตามต้องการเหตุจากบางคอลัมน์ในสูตรเป็น NULL


  • ปัญหาที่พบคือบาง Record นั้น ColumnB ไม่มีข้อมูล (NULL) ทำให้สูตรที่มี ColumnB อยู่ด้วยเป็น NULL ตามไปด้วย แต่ที่ต้องการคือถ้า Record ไหนที่ ColumnB เป็น NULL ก็กำหนดค่าให้มีค่าเป็น 0 ซะ
  • แก้ปัญหาโดยใช้ IsNull มาช่วยเช่น
    • ถ้าเป็นคำสั่งใน SQL Server
      • SELECT YourColumn, ColumnA, ColumnB, IsNull(ColumnA,0)+IsNull(ColumnB,0) As SumAandB FROM YourTable
  • จะได้ผลตามที่ต้องการ
 
  • ถ้าเป็นใน Crystal Report ก็อาจต้องสร้าง Formula fields เพิ่มเช่น 
    • IF IsNull(ColumnB) THEN 0 ELSE ColumnB

No comments:

Post a Comment