วันศุกร์ที่ 2 เมษายน พ.ศ. 2553

MDX Query : Select Except members

MDX Query syntax for "NOT IN" or "Except" condition
มีทริ๊กเล็ก เกี่ยวกับการใช้ MDX ในการ Selelect ข้อมูลให้ได้ตามต้องการ  ในที่นี้หากเทียบกับใน SQL
แล้วก็คือการใช้ IN หรือ NOT IN นั่นเอง 
ตัวอย่าง MDX สำหรับ Condition NOT IN : Using AdventureWork

---------------Normal condition -------------------
ตัวอย่าง Query สำหรับการเรียกดูยอดขายของสินค้าทุกประเภท

SELECT [Measures].[Sales Amount] on 0,
[Product].[Category].[Category] ON 1
FROM [Adventure Works]


Result

              Sales Amount

Accessories   $1,272,057.89
Bikes         $94,620,526.21
Clothing      $2,117,613.45
Components    $11,799,076.66

-------- EXCEPT or NOT IN condition  ---------

SELECT [Measures].[Sales Amount] on 0,
-{[Product].[Category].&[1],[Product].[Category].&[4]} on 1
FROM [Adventure Works]

Result
             Sales Amount
Clothing     $2,117,613.45
Components   $11,799,076.66

จากตัวอย่างจะเห็นว่าผลลัพธ์เหลือแค่ 2 rows คือ  Clothing และ Component
Categories ที่หายไปคือ Accessories และ Bikes ซึ่งเกิดจากการที่เราได้ใส่ Except / Not in
เข้าไปใน Query  นั่นเอง ซึ่งรูปแบบคือ   -{member set}

ไม่มีความคิดเห็น:

แสดงความคิดเห็น