Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ช่วยหน่อยครับ คือฐานข้อมูลมันแยกกันตามรูปแบบนี้อะครับ แต่ผมจะทำการซื้อขายสินค้าตามรูปอะครับ ผมควจจะเขียนโค้ดยังไงดีอะครับ



 

ช่วยหน่อยครับ คือฐานข้อมูลมันแยกกันตามรูปแบบนี้อะครับ แต่ผมจะทำการซื้อขายสินค้าตามรูปอะครับ ผมควจจะเขียนโค้ดยังไงดีอะครับ

 



Topic : 106571



โพสกระทู้ ( 88 )
บทความ ( 0 )



สถานะออฟไลน์




ช่วยหน่อยครับ คือฐานข้อมูลมันแยกกันตามรูปแบบนี้อะครับ แต่ผมจะทำการซื้อขายสินค้าตามรูปอะครับ ผมควจจะเขียนโค้ดยังไงดีอะครับ

ภภภภ

ๅ/-

ข้อมูลยามันแยกเป็น 2 ชุด มี สินค้า 13 ตัว กับ 5 ตัว
แต่ผมต้องการซื้อ 15 ตัวแบบนี้อะครับ ควรเขียนโค้ดยังไงดีครับ

***การซื้อก็หักจากวันที่หมดอายุก่อน



Tag : PHP, MySQL









ประวัติการแก้ไข
2014-03-05 15:30:06
2014-03-05 15:32:44
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-03-05 15:28:49 By : nick15 View : 1140 Reply : 8
 

 

No. 1



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


เป็นการออกแบบฐานข้อมูลที่แปลกๆไม่มี PK .... เข้าใจว่า drg_id เป็น FK มาจากอีกตารางไช่ไหมครับ. ..
- น่าจะเป็นลักษณะสินค้าชิ้นเดียวกันแต่ป้อนเข้ามาคนละวันประมาณนี้ไช่ไหมครับ
ดังนั้นข้อมูลที่คิวรี่มาได้ในส่วนรหัสสินค้า - กลุ่มยา ต้องมาจากตารางแม่(ตารางที่ให้กำเนิดdrg_id)
ไล่ลงมาถึง จำนวนที่มี ก็ค่อยไป sum ตารางในภาพนี้เหละ โดยเพิ่มเงื่อนใข drg_id = ตัวที่ต้องการ

คร่าวๆก็ประมาณนี้เหละมั้งครับ . . .




*** แนะนำว่าควรใส่สักฟิลไว้เป็น PK นะครับปล่อยเป็นเลขรันautoแบบไม่สนใจเลยก็ได้ เวลา UPDATE/DELETE จะได้มีตัวชี้เป้าจะได้ง่ายไม่ยุ่งยากในภายหลัง








ประวัติการแก้ไข
2014-03-05 15:46:37
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-05 15:45:08 By : meannerss
 


 

No. 2



โพสกระทู้ ( 88 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 1 เขียนโดย : meannerss เมื่อวันที่ 2014-03-05 15:45:08
รายละเอียดของการตอบ ::
เหมือนในภาพอะครับ sum สินค้า 13 อัน กับ 5 อัน เป็น 18 นะครับในส่วนนี้ผมทำได้แล้วครับ

แต่ตอนซื้อสมมุกติจะซื้อ 15 ผมจะหักจำนวนออกตามวันหมดอายุก็ หัก 5 อันให้เหลือ 0 กับ 13 อันให้เหลือ 3 แบบนี้อะครับ ผมจะเขียนโค้ดไงดีอะครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-05 15:52:29 By : nick15
 

 

No. 3



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


คิดเล่น ๆ ผมทำไม่ได้แต่อาจมีคนทำได้ ตัวหลักสำคัญ "วันหมดอายุ"

select * from stock where Drg_name = 'ชื่อยา' order by Drg_Exp ASC
1. มันก็จะได้ 5 กล่องมาก่อนถูกป่ะ ก็เอา 15 เข้าไปลบเลย ติดลบ 10 แล้วนะ
2. พอลูปที่ 2 มันก็จะได้ยา 13 กล่องออกมา ก็เอาไป +(-10) ใช้นี้มันซะ

สุดท้ายเราก็จะเหลือยาที่วันหมดอายุมากกว่าเก็บไว้ เป็นแนวคิดครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-05 16:39:42 By : apisitp
 


 

No. 4

Guest



LIFO Query Basic Sample


Code (SQL)
DECLARE @Drg_QttTotal INT = 15 -- จำนวนที่สั่งซื้อ แม่งขายดีนี่หว่า

SELECT Drg_Exp
	,CASE 
		WHEN (
				SELECT SUM(Drg_QttTotal)
				FROM @Stocks s2
				WHERE s2.Drg_Exp >= s1.Drg_Exp
				) > @Drg_QttTotal
			THEN @Drg_QttTotal - (
					SELECT ISNULL(SUM(Drg_QttTotal), 0)
					FROM @Stocks s2
					WHERE s2.Drg_Exp > s1.Drg_Exp
					)
		ELSE Drg_QttTotal
		END AS Drg_QttTotal
	,Unt_Name
FROM @Stocks s1
WHERE ((
		SELECT ISNULL(SUM(Drg_QttTotal), 0)
		FROM @Stocks s2
		WHERE s2.Drg_Exp > s1.Drg_Exp
		) < @Drg_QttTotal) AND (Drg_ID = 630)



[x] SQL Server ISNULL() == MySQL IFNULL()


GoodLuck.
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-05 16:56:20 By : love9713
 


 

No. 5

Guest


จาก #NO 4 ให้เปลี่ยน @Stocks เป็นชื่อตารางของคุณ เห็นแว๊ปฯว่าซื่อ Stock
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-05 17:00:43 By : love9713
 


 

No. 6



โพสกระทู้ ( 88 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 4 เขียนโดย : love9713 เมื่อวันที่ 2014-03-05 16:56:20
รายละเอียดของการตอบ ::
ชวยเขียนโค้ด ประมาณ นี้ให้หน่อยได้มั้ยครับ งงมากเลย

Code (PHP)
$sqlDetailp = "SELECT * FROM patient_comm WHERE Pt_Id = '".$_POST["Pt_Id"]."' ";
$rsp = mysql_query($sqlDetailp);
while($rowp = mysql_fetch_array($rsp))
{
	$Grp_Namep = $rowp['Grp_Name'];
	if($Grp_Namep == $_POST["Grp_Name"]){
		echo "<script>alert('ลูกค้าแพ้ยาชนิดนี้');</script>";
		//echo ลูกค้าแพ้ยาชนิดนี้;
	  }
}


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-05 17:18:49 By : nick15
 


 

No. 7

Guest


ตอบความคิดเห็นที่ : 6 เขียนโดย : nick15 เมื่อวันที่ 2014-03-05 17:18:49
รายละเอียดของการตอบ ::
** ผมงงกับ Stocks ยาของคุณมากกว่าครับ เข้าหลังออกก่อน (มันผิดธรรมชาติหมดอายุขัย ผมขาวเผาผมดำ)

***** ตนเป็นที่พึ่งแห่งตน


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-05 17:35:14 By : love9713
 


 

No. 8

Guest


***การซื้อก็หักจากวันที่หมดอายุก่อน
drg_exp drg_Qty
2012-12-04 13
2015-03-05 5

ผมดูวันที่ผิดไป ของคุณถูกต้องแล้ว เป็นแบบ FIFO (First In First Out)
เพราะฉะนั้น LIFO Query Basic Sample คุณก็แค่เปลี่ยนเงื่อนไข
เปลี่ยน >= เป็น <=
เปลี่ยน > เป็น <

ข้อสังเกตุ Query ข้างบนจะทำงานไม่ถูกต้องในกรณีข้อมูลวันเดียวกันมีมากกว่า 1 ระเบียนในแต่ละ drg_Id เช่น
drg_exp drg_Qty
2012-12-04 13
2015-03-05 5
2015-03-05 5
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-06 07:47:58 By : love9713
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยหน่อยครับ คือฐานข้อมูลมันแยกกันตามรูปแบบนี้อะครับ แต่ผมจะทำการซื้อขายสินค้าตามรูปอะครับ ผมควจจะเขียนโค้ดยังไงดีอะครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่