$sqlSetting="SELECT * FROM order_detail Where id =$id";
$resultSetting=mysql_query($sqlSetting)or die(mysql_error());
$checkstock=mysql_fetch_array($resultSetting);
$quanlity=$checkstock['amount'];
//อัพเดทข้อมูล
$sql2="UPDATE product SET quanlity = $quanlity - quanlity WHERE id=$id";
mysql_query($sql2)or die(mysql_error());
- product <-- ชื่อสินค้า
- supplier <-- ผู้ผลิตสินค้า
- product_supplier <-- relation ระหว่าง product และ supplier เป็น many to many
- stock <-- lot id และ จำนวนสินค้า มี fk ไปยัง product_supplier เป็น one to many (จะละเอียดกว่านี้ก็ได้ถ้าอยากให้เก็บการสั่งของหนึ่งครั้งสั่งหลายอย่าง ก็ทำตาราง lot ขึ้นมาอีกอัน)
- order <-- การสั่งซื้อ มี fk ไปยัง order_detail เป็น one to many
- order_detail <-- สินค้าและจำนวนที่ซื้อ
- order_detail_stock <-- ตัด stock จาก lot ไหน เป็น many to many กับ stock เพราะในบางกรณีอาจตัดสินค้าครั้งเดียว 2 lot เพราะสินค้า lot แรกไม่พอ
หมายเหตุ ความสัมพันธ์แบบ many to many ต้องมีตาราง 1 ตารางมาช่วย
ปล. นอกจากตรรกะแล้ว นายยังต้องศึกษาเรื่อง syntax อีกเยอะๆ เลยนะ
ปล. คิดระบบเล่นๆ อาจจะผิด รบกวนผู้รู้ช่วยตรวจด้วย
จากตัวอย่างจะเห็นว่าไม่ต่างกันเลย แต่การได้มาของยอดยกมา 5000 ea นั้นต่างกัน
ของแบบ index แค่ไปดึงยอดที่เก็บไว้ของเมื่อวานมาเป็นอันจบทำงานแปปเดียว
แบบไม่ Index ต้องไปไล่มาตั้งแต่วันที่ 1 - 1499 เพื่อให้ได้ยอดยกมาของวันที่1500 กดบ่อยๆ server ไม่ล่มให้มันรู้ไป555