BMS-HOSxP Community

HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: panus_t ที่ มกราคม 23, 2014, 15:05:44 PM

หัวข้อ: กำหนดช่วงหารายงาน 1 ปีแต่อยากให้ออกเป็นเดือนทำไงครับ
เริ่มหัวข้อโดย: panus_t ที่ มกราคม 23, 2014, 15:05:44 PM
กำหนดช่วงหารายงาน 1 ปีแต่อยากให้ออกเป็นเดือนทำไงครับ

select *
from death v
where death_date between "2011-10-01" and "2012-09-30"
 and ( (v.death_diag_1 >= "W65" and v.death_diag_1 <= "W74")
 or (v.death_diag_2 >= "W65" and v.death_diag_2 <= "W74")
 or (v.death_diag_3 >= "W65" and v.death_diag_3 <= "W74")
 or (v.death_diag_4 >= "W65" and v.death_diag_4 <= "W74")
 )

ให้ออก
ต.ค.     5
พ.ย.     12
 ;D
หัวข้อ: Re: กำหนดช่วงหารายงาน 1 ปีแต่อยากให้ออกเป็นเดือนทำไงครับ
เริ่มหัวข้อโดย: vespagointer ที่ มกราคม 23, 2014, 16:10:21 PM
ลองเพิ่ม โค๊ดนี้เข้าไปครับ จะแยกวันเดือนปี ออกมาแล้วค่อย group month เอา

year(v.death_date)+543 as year
,month(v.death_date) as month
,day(v.death_date) as day
หัวข้อ: Re: กำหนดช่วงหารายงาน 1 ปีแต่อยากให้ออกเป็นเดือนทำไงครับ
เริ่มหัวข้อโดย: panus_t ที่ มกราคม 24, 2014, 09:16:47 AM
ขอบคุณมากเลยครับ ผมนำมาประยุกต์ใช้ได้ดังนี้ครับ

select month(v.vstdate),count(month(v.vstdate))
from vn_stat v
where v.vstdate between "2011-10-01" and "2012-09-30"
 and ( (v.pdx >= "V01" and v.pdx <= "V89")
 or (v.dx0 >= "V01" and v.dx0 <= "V89")
 or (v.dx1 >= "V01" and v.dx1 <= "V89")
 or (v.dx2 >= "V01" and v.dx2 <= "V89")
 or (v.dx3 >= "V01" and v.dx3 <= "V89")
 or (v.dx4 >= "V01" and v.dx4 <= "V89")
 or (v.dx5 >= "V01" and v.dx5 <= "V89") )
 group by month(v.vstdate)

ปล.กด Like แล้วนะครับแต่ไม่เห็นขึ้นชื่อผม  ???
หัวข้อ: Re: กำหนดช่วงหารายงาน 1 ปีแต่อยากให้ออกเป็นเดือนทำไงครับ
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 26, 2014, 13:45:50 PM
ลองใช้ concat(left(year(v.death_date)+543),2),lpad(month(v.death_date),2,"00")) เพื่อให้เรียงตามปีงบประมาณได้
5610
5611
5612
5701
5702
5703
.
.
.
หัวข้อ: Re: กำหนดช่วงหารายงาน 1 ปีแต่อยากให้ออกเป็นเดือนทำไงครับ
เริ่มหัวข้อโดย: panus_t ที่ มกราคม 27, 2014, 11:29:54 AM
ถ้าต้องการเพิ่ม ว่าไม่เสียชีวิตด้วยทำไงครับ
where v.vstdate between "2011-10-01" and "2012-09-30"
and ( (v.pdx >= "V01" and v.pdx <= "V89")
or (v.dx0 >= "V01" and v.dx0 <= "V89")
or (v.dx1 >= "V01" and v.dx1 <= "V89")
or (v.dx2 >= "V01" and v.dx2 <= "V89")
or (v.dx3 >= "V01" and v.dx3 <= "V89")
or (v.dx4 >= "V01" and v.dx4 <= "V89")
or (v.dx5 >= "V01" and v.dx5 <= "V89") )
and v.hn<>(select hn from death where .......หรือว่าใช่ตัวไหนดีครับ
หัวข้อ: Re: กำหนดช่วงหารายงาน 1 ปีแต่อยากให้ออกเป็นเดือนทำไงครับ
เริ่มหัวข้อโดย: panus_t ที่ มกราคม 27, 2014, 11:49:08 AM
ตัวนี้ได้หรือเปล่าครับ 
and v.hn not in (select hn from death)