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

Registered : 107,784

HOME > .NET Framework > Forum > รบกวนสอบถามการ Query 3 ตารางด้วยคำสั่ง Group By และ Having ด้วยครับ





 

รบกวนสอบถามการ Query 3 ตารางด้วยคำสั่ง Group By และ Having ด้วยครับ

 



Topic : 130276



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



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




คือผมมี ตารางอยู่ 3 ตาราง มี Item_Price, Item_In, Item_Out
Item_Price เก็บรหัสอะไหล่ และอะไหล่รหัสเดียวมีหลายราคา

p

Item_In เอาไว้เก็บข้่อมูลการนำเข้าอะไหล่

i

Item_Out เอาไว้เก็บข้อมูลกายจำหน่ายออก

o

ผมก็เลยต้องการ Select จำนวนเข้าและออก ตามราคา ของแต่ละอะไหล่นั้น ตามภาพครับ ผลที่ได้คือการ Sum จำนวนออก ไม่ตรงครับ

พ


Code (คำสั่ง SQL ที่ผมใช้ครับ)
SELECT P.item_price,Sum(item_qtyin),Sum(item_qtyout)
FROM Item_Price P, Item_in I , Item_out O
WHERE P.item_price_number=I.item_price_number AND P.item_price_number=O.item_price_number 
GROUP BY P.item_price,P.item_id, I.item_id,I.item_price_number,O.item_price_number,O.item_id
HAVING P.item_id="A001" AND I.item_id="A001"  AND O.item_id="A001"




Tag : .NET, Ms Access, MySQL, Ms SQL Server 2008, VBScript, VB.NET







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2018-02-13 11:38:24 By : tongchimlang View : 390 Reply : 8
 

 

No. 1



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



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


item_price Expr1001 Expr1002
176.55 15 1
25 3 2

คำตอบที่ควรจะได้ ผมผิดพลาดตกหล่นตรงไหน
รบกวนขอคำแนะนำด้วยนะครับ ขอบคุณครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-02-13 14:01:38 By : tongchimlang
 


 

No. 2

Guest


Code (SQL)
SELECT SUM(item_price),SUM(item_qtyin),SUM(item_qtyou)
FROM Item_Price
LEFT JOIN Item_In  ON Item_Price.item_price_number=Item_In.item_price_number
LEFT JOIN Item_Out ON Item_Price.item_price_number=Item_Out.item_price_number
WHERE Item_Price.item_id='A001' AND
Item_In.item_id='A001' AND
Item_Out.item_id='A001'


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-02-13 14:16:23 By : OOP
 

 

No. 3



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



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


ตอบความคิดเห็นที่ : 2 เขียนโดย : OOP เมื่อวันที่ 2018-02-13 14:16:23
รายละเอียดของการตอบ ::
ขอบคุณมากนะครับสำหรับคำแนะนำ
ำ
แต่มัน Error ตามภาพนะครับ คือผมลอง Left Join เกินสอง Table มันจะเกิดError นี้ขึ้นใน Microsorf Access
แต่ถ้า Join แค่ 2 Table ไม่เป็นไร และถ้าใช้ Query นี้ใน SQL Server Join เกิน 2Table ไม่เป็นครับ ผมหาวิธีแก้มา
หลายวันแล้วก็ยังไม่ได้ครับ หรือต้องปรับ Option ตรงไหนใน Access ครับ ขอบคุณครับ

ปล.ถึงจะลอง Left Join ง่ายๆ แต่ถ้าเกิน 2Table จะ Error ตามภาพเลย

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-02-13 15:46:00 By : tongchimlang
 


 

No. 4

Guest


ลองใส่วงเล็บกำกับแบบนี้ดูครับ

Code (SQL)
select
  t1.c1
, t2.c2
, t3.c3
, t4.c4
from ((t1
inner join t2 on t1.something = t2.something)
inner join t3 on t2.something = t3.something)
inner join t4 on t3.something = t4.something

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-02-13 15:55:03 By : OOP
 


 

No. 5



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



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


ผมใส่วงเล็บขั้น ไม่ Error แล้วครับแต่ยังไม่ใช่ผลลัพพ์ที่ต้องการครับผม..
ก

ผมต้องการ
กก
ห


ประวัติการแก้ไข
2018-02-13 16:21:46
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-02-13 16:20:20 By : tongchimlang
 


 

No. 6

Guest


ใส่ Gropby และ Distince ไปที่ SUM
Code (SQL)
SELECT SUM(DISTINCT item_price),SUM(DISTINCT item_qtyin),SUM(DISTINCT item_qtyou)
FROM Item_Price
LEFT JOIN Item_In  ON Item_Price.item_price_number=Item_In.item_price_number
LEFT JOIN Item_Out ON Item_Price.item_price_number=Item_Out.item_price_number
WHERE Item_Price.item_id='A001' AND
Item_In.item_id='A001' AND
Item_Out.item_id='A001'
GROUP BY Item_Price.item_price_number,Item_In.item_price_number,Item_Out.item_price_number


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-02-13 17:04:31 By : OOP
 


 

No. 7

Guest


ข้างบนไม่ถูกนะครับ เอาตัวนี้
Code (SQL)
SELECT DISTINCT
  (SELECT SUM(t1.item_price)FROM Item_Price t1 WHERE t1.item_id='A001' AND t1.item_price_number=Item_Price.item_price_number  GROUP BY t1.item_price_number) item_price,
  (SELECT SUM(t2.item_qtyin)FROM Item_In    t2 WHERE t2.item_id='A001' AND t2.item_price_number=Item_Price.item_price_number GROUP BY t2.item_price_number) item_qtyin,
  (SELECT SUM(t3.item_qtyou)FROM Item_Out   t3 WHERE t3.item_id='A001' AND t3.item_price_number=Item_Price.item_price_number GROUP BY t3.item_price_number) item_qtyin
FROM Item_Price

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-02-13 17:41:20 By : OOP
 


 

No. 8



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



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


ตอบความคิดเห็นที่ : 7 เขียนโดย : OOP เมื่อวันที่ 2018-02-13 17:41:20
รายละเอียดของการตอบ ::
ขอบคุณมากๆ นะครับ สำหรับคำแนะนำครับ ขอบคุณครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-02-14 10:47:42 By : tongchimlang
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : รบกวนสอบถามการ Query 3 ตารางด้วยคำสั่ง Group By และ Having ด้วยครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม

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