 |
ใน php ผมจะเขียนคิวรี่ มากกว่า 1 ชุดดึงข้อมูล แล้วแสดงผลออกในตารางเดียวได้มั้ยครับ |
|
 |
|
|
 |
 |
|
ได้ครับ ใช้การ JOIN Table เอาแล้วค่อยมา where ..... and ..... ข้างล่างปิดท้ายครับ แล้วก็ดึงตัวแปลของ Table นั้นมาใช้
Code (SQL)
select dbo.Oders.o_id
,dbo.Customer.cus_name
,dbo.Oders.o_date
,dbo.Payment.payment_type
,sum(dbo.Orders_Details.pd_amount * dbo.Products.pd_prize) as Total_Prize
from dbo.Customer INNER JOIN
dbo.Oders ON dbo.Customer.cus_id = dbo.Oders.cus_id INNER JOIN
dbo.Payment ON dbo.Oders.pay_id = dbo.Payment.pay_id INNER JOIN
dbo.Orders_Details ON dbo.Oders.o_id = dbo.Orders_Details.o_id INNER JOIN
dbo.Products ON dbo.Orders_Details.pd_id = dbo.Products.pd_id
where dbo.Payment.pay_id != 1
group by dbo.Oders.o_id
,dbo.Customer.cus_name
,dbo.Oders.o_date
,dbo.Payment.payment_type
ตัวอย่างครับ
|
ประวัติการแก้ไข 2016-07-14 15:16:14
 |
 |
 |
 |
Date :
2016-07-14 15:14:40 |
By :
stepartz |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ทำเป็น viwe ไว้ก่อน join ก็จะช่วยให้ code ดูง่ายขึ้นนะครับ
|
 |
 |
 |
 |
Date :
2016-07-14 15:24:32 |
By :
thesin18598 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ปัญหาที่ผมเขียน โค๊ดแยกเพราะว่าเอามารวมกันไม่ได้น่ะครับ
นับ 2 อันแรก นับอายุคนจาจากตารางเดียว
นับอันที่ 3 4 นับคนจาก 1 และ2 เพื่อเอามาหา บริการ แต่เป็นการนับจำนวนคน ตาม (PPSPECIAL like '1b2%')
ซึ่ง 1 คนจะมาทำ PPSPECIAL like '1b2%' หลายครั้งได้ เลยนับแค่จำนวนคนน่ะครับ
|
 |
 |
 |
 |
Date :
2016-07-14 15:57:30 |
By :
sweerawat |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
การทำ view คือเอา code แบบ ตัวอย่างทั้ง 3 แบบด้านบน จำลองเป็น table โดย จะมีแค่ field เราระบุ
ผมใช้ tools ตัวนี้ SQL Manager for MySQL ช่วยครับ
ลองศึกษาจากตัวนี้ครับ
https://www.thaicreate.com/tutorial/mysql-view-table.html
|
 |
 |
 |
 |
Date :
2016-07-14 16:07:31 |
By :
thesin18598 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ถ้าอยากสร้าง view ง่ายๆ ก็ใช้ navicat ครับ
ผมใช้ตัวนี้จนตอนนี้ ใช้ phpamyadmin ไม่คล่องละ 5555
|
 |
 |
 |
 |
Date :
2016-07-14 16:17:03 |
By :
compiak |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|