 |
|
การ ADDMONTH จาก Query ข้างบน ต้องการให้ MONTH +1 จากค่าที่รับมา ให้ (SUBSTR(CAST(ESIVDT AS CHAR(8)),1,4)||'/'|| |
|
 |
|
|
 |
 |
|
SQL
CASE WHEN SUBSTR(VARCHAR(ESDUDT),1,4)||'/'||SUBSTR(VARCHAR(ESDUDT),5,2) =(SUBSTR(CAST(ESIVDT AS CHAR(8)),1,4)||'/'||SUBSTR(CAST(ESIVDT AS CHAR(8)),5,2))
THEN SUM(ESCUAM * -1) * 100 / MAX(VAT) ELSE 0 END ESCUAM1,
CASE WHEN SUBSTR(VARCHAR(ESDUDT),1,4)||'/'||SUBSTR(VARCHAR(ESDUDT),5,2) = ?
THEN SUM(ESCUAM * -1) * 100 / MAX(VAT) ELSE 0 END ESCUAM2,
...
CASE WHEN SUBSTR(VARCHAR(ESDUDT),1,4)||'/'||SUBSTR(VARCHAR(ESDUDT),5,2) = ?
THEN SUM(ESCUAM * -1) * 100 / MAX(VAT) ELSE 0 END ESCUAM8
จาก Query ข้างบน ต้องการให้ MONTH +1 จากค่าที่รับมา
ให้ (SUBSTR(CAST(ESIVDT AS CHAR(8)),1,4)||'/'||SUBSTR(CAST(ESIVDT AS CHAR(8)),5,2))
เป็นค่าที่รับมาจากหน้า Design ESCUAM1= '2008/06' เป็นเดือนเเรก และ ต้องการให้
ESCUAM2 = '2008/07' ...ESCUAM8 = '2009/01'
จะเขียน Query ยังไงค่ะ
Tag : - - - -
|
|
 |
 |
 |
 |
Date :
2009-03-24 09:50:44 |
By :
HiArmy |
View :
1787 |
Reply :
1 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
SELECT GETDATE() AS Now, DATEADD(month, 1, '2008/08/01') AS addMonth
ใช้คำสั่ง DATEADD น่าจะสดวกกว่านะครับ ถ้าเรารับมาเฉพาะ เดือนกับปี เราก็ระบุวันลงไปเลย fix เป็น instance ไปเลยใน SQL
|
 |
 |
 |
 |
Date :
2009-04-07 14:29:17 |
By :
art1980kmitnb |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|