 |
สอบถามปัญหาคำสั่ง SQL ของ MySQL เกี่ยวกับการใช้ Where เพื่อเลือกสินค้าที่ไม่มีสถานะ ที่ต้องการ |
|
 |
|
|
 |
 |
|
สวัสดีค่ะรบกวนสอบถามหน่อยค่ะ โจทย์คือ
มีสถานะ อยู่ 3 สถานะ คือ A B และ C ต่อ 1 สินค้า ซึกต้องการทราบว่า สินค้าใด ที่ไม่มี สถานะ C บ้าง ต้องเขียนออกมาในรูปแบบใหนค่ะ พอดีเขียนออกมาแล้วไม่ได้ตรงตามที่เขียนเลยค่ะ
ตัวอย่างสคริป
Code (SQL)
select s.booking_datetime
,s.est_delivery_datetime
,s.payerid
,s.Consignment_no,max(st.tracking_datetime) as maxx
,s.tot_pkg
,s.last_status_code
,st.status_code
,st.remark
from shipment s (nolock)
inner join shipment_tracking st (nolock)
on s.consignment_no = st.consignment_no
inner join customer C (nolock)
on S.payerid = C.custid
where C.master_account in ('KSHOP')
and st.status_code not in ('MDE')
group by s.consignment_no ,s.est_delivery_datetime,s.payerid ,s.tot_pkg ,s.last_status_code
Tag : MySQL, Ms SQL Server 2005, Ms SQL Server 2008, Ms SQL Server 2012
|
|
 |
 |
 |
 |
Date :
2016-05-27 23:26:29 |
By :
saya559 |
View :
768 |
Reply :
2 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอคำอธิบายเพิ่มเติมหน่อยครับ ไม่แน่ใจที่ admin ตอบไปจะแก้ไขได้หรือยัง
ที่ว่าสถานะมีอยู่ 3 อย่าง A,B และ C นั้น ทั้ง 3 สถานะนี้อยู่ใน column เดียวกันหรือเปล่า
เช่น Column = 'ProductStatus' Value = 'A,B,C' ถ้ากรณีใช้การ substr เอาครับ
หรืออยู่คนละ column เช่น Column 'A' = 'Yes', Column 'B' = 'Yes', Column 'C' = 'No'
กรณีนี้ใช้ and เอาครับ
หรือสถานะ C ที่ว่านี่ ได้จากการไปเปรียบเทียบ มาจาก table อื่นอีกที
ผมจะได้เรียนรู้เป็นประสบการณ์ด้วยครับ    
|
 |
 |
 |
 |
Date :
2016-05-28 15:59:07 |
By :
salapao_codeman |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|