|
|
|
ขอสบถามการ query โดยมีเงื่อนไข แต่ไม่ใช้ if else เป็น query โปรแกรม report builder |
|
|
|
|
|
|
|
สอบถามการ query ครับคือผมมี query เรียกข้อมูลมาแล้วมีปัญหาตรงที่ว่า ผมต้องการให้ OP_HIST.OP_WKCTR ให้แสดงข้อมูลขึ้นต้นด้วย 3 เสมอ (ปกติมันจะมีเลข 3 5 6 9 มันคือตัวบ่งบอกว่า PT_MSTR.PT_PART อยู่ที่ไหน) แต่ผมมีปัญหาว่า มันจะแสดงข้อมูล ที่ OP_HIST.OP_WKCTR ขึ้นต้นด้วย 5 เสมอ ผมต้องการ ล็อคให้ แสดงที่ขึ้นต้นด้วย 3 เท่านั้นครับ แต่ในขณะเดียวกัน เวลาค้นหาเลขอื่น ก็แสดงผลตามที่หา
ที่มันขึ้นต้นด้วย 5 เพราะมาจาก OP_HIST.OP_DOMAIN = 2000 แต่จริงๆมันมีทุกเลขตามที่บอกด้านบน (OP_HIST.OP_WKCTR) เพียงแต่มันขึ้นด้วย 5 ครับ และที่ไม่ใช้ if else เพราะผมใช้ report builder ครับ มันใช้ไม่ได้ใน query dataset
Code (VB.NET)
SELECT op_dept,OP_HIST.OP_TYPE,to_char(OP_HIST.OP_DATE,'dd/MM/yyyy') as OP_DATE,
OP_HIST.OP_WO_OP, OP_HIST.OP_QTY_RJCT, OP_HIST.OP_WKCTR, OP_HIST.OP_WO_LOT,
OP_HIST.OP_DOMAIN, WC_MSTR.WC_DESC, PT_MSTR.PT_PART, PT_MSTR.PT_DESC1,
PT_MSTR.PT_DESC2, PT_MSTR.PT_UM, PT_MSTR.PT_PROD_LINE,
DPT_MSTR.DPT_DEPT, DPT_MSTR.DPT_DESC
FROM QAD.OP_HIST OP_HIST, QAD.WC_MSTR WC_MSTR,
QAD.PT_MSTR PT_MSTR, QAD.DPT_MSTR DPT_MSTR
WHERE Upper(OP_HIST.OP_DOMAIN) = '2000' and (Upper(OP_HIST.op_dept) like '3%' or Upper(OP_HIST.op_dept) = ''
and Upper(OP_HIST.OP_WKCTR) like '5%')
and Upper(OP_HIST.OP_WKCTR) = Upper(WC_MSTR.WC_WKCTR (+)) AND
OP_HIST.OP_MCH = WC_MSTR.WC_MCH (+) AND Upper(OP_HIST.OP_DOMAIN) = Upper(WC_MSTR.WC_DOMAIN (+)) AND
Upper(OP_HIST.OP_PART) = Upper(PT_MSTR.PT_PART (+)) AND Upper(OP_HIST.OP_DOMAIN) = Upper(PT_MSTR.PT_DOMAIN (+)) AND
OP_HIST.OP_DEPT = DPT_MSTR.DPT_DEPT (+) AND Upper(OP_HIST.OP_DOMAIN) = Upper(DPT_MSTR.DPT_DOMAIN (+)) and
OP_HIST.OP_QTY_RJCT <> 0.00 and
Upper(OP_HIST.OP_TYPE) = 'LABOR' and
(Upper(PT_MSTR.PT_PART)>= '6GR' || Decode('6GR','',' ','') and Upper(PT_MSTR.PT_PART) <= '6GRz' ) and
(OP_HIST.OP_DATE >= To_Date('01/09/17','dd/MM/yy') AND OP_HIST.OP_DATE <= To_Date('09/10/18','dd/MM/yy'))
--and (Upper(OP_HIST.OP_EMP) >= :OP_EMP1 || Decode(:OP_EMP1,'',' ','') and Upper(OP_HIST.OP_EMP) <= :OP_EMP2 )
-- and (PT_MSTR.PT_DESC2 >= :PT_DESC21 || Decode(:PT_DESC21,'',' ','') and Upper(PT_MSTR.PT_DESC2) <= :PT_DESC22 )
and (Upper(OP_HIST.OP_WKCTR) >= '5' || Decode('5','',' ','') and Upper(OP_HIST.OP_WKCTR) <= '5z' )
Tag : .NET, Oracle, VS 2008 (.NET 3.x), VS 2010 (.NET 4.x)
|
ประวัติการแก้ไข 2018-10-09 09:55:53
|
|
|
|
|
Date :
2018-10-09 09:55:08 |
By :
bankguszo |
View :
766 |
Reply :
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
and (
Upper(OP_HIST.op_dept) like '3%'
or Upper(OP_HIST.op_dept) = ''
and Upper(OP_HIST.OP_WKCTR) like '5%'
)
|
|
|
|
|
Date :
2018-10-09 11:15:32 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
and (
Upper(OP_HIST.op_dept) like '3%'
or
Upper(OP_HIST.OP_WKCTR) like '5%'
)
|
|
|
|
|
Date :
2018-10-09 11:24:58 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|