การใช้แบบสอบถามเชื่อมแบบมีเงื่อนไข
กระทู้เก่าบอร์ด อ.สุภาพ ไชยา

 249   5
URL.หัวข้อ / URL
การใช้แบบสอบถามเชื่อมแบบมีเงื่อนไข

รบกวนท่านผู้รู้หรือท่านอาจารย์หน่อยครับ 
สมมุติมีตารางข้อมูลดังนี้ 
 CODE      QTY    CONDITION 
     A              1               SALE                บรรทัดที่ 1 
     A              1               SALE                บรรทัดที่ 2 
     B              1               FORCAST       บรรทัดที่ 3 
     B              1               SALE                บรรทัดที่ 4 
     B              1               ESTIMATE      บรรทัดที่ 5 
 
หากต้องการสร้างการเชื่อมตารางไปที่อีกตารางหนึ่งสมมุติเป็นตารางที่ 2 โดยมีเงื่อนว่า 
***    ถ้า CODE=A ให้เอาข้อมูลเฉพาะที่เป็น SALE (คือบรรทัดที่ 1และ2) ไปต่อเชื่อมกับตารางที่ 2 
**** แต่ถ้า CODE=B ให้เอาข้อมูลทั้งที่เป็น SALE และ FORECAST (คือบรรทัดที่ 3และ4 )ไปต่อเชื่อม 

5 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R01961
หมายถึง ให้เอาแค่ 2 รายการแรกของแต่ละโค้ดไป หรือยังงัยครับ
2 @R01963
ขอโทษครับที่ไม่ละเอียด คือ Result ของตารางที่ 2 จะออกมาเป็น บรรทัดที่ 1,2,3,4 เท่านั้น บรรทัด 5 ไม่ออก ส่วนฟิล์มี 3 ฟิลด์เหมือนกันครับ ดังนี้ CODE_T2 QTY_T2 CONDITION_T2 A 1 SALE A 1 SALE B 1 FORCAST B 1 SALE หมายเหตุ จะไม่แสดงรายการใน บรรทัดทีึ่ 5 ครับ
3 @R01966
แล้วอีกตารางเข้ามามีส่วนร่วมในการรวมกันอย่างไรครับ จากที่ให้ตัวอย่างมา ข้อมูลมาจากตารางแรกหมด จึงไม่เห็นความจำเป็นที่จะต้องเชื่อมต่อกับตารางที่ 2 เลยครับ
4 @R01967
คือ ตารางที่ 2 เป็นการคัดเลือกข้อมูลจากตารางที่ 1 โดยมีเงื่อนไขการคัดเลือกมาที่ตาราง2 ตามเงื่อนไขของ CODE แบบนี้ครับ *** ถ้า CODE="A" ให้นำข้อมูล"A" เฉพาะที่CONDITION="SALE" ไปไว้ที่ตารางที่ 2 ถ้า CODE="B" ให้นำข้อมูล"B" เฉพาะที่CONDITION="SALE" หรือ "FORCAST" ไปไว้ที่ตารางที่ 2 จุดประสงค์ของโปรแกรมคือ เพื่อแยกข้อมูลว่าข้อมูลไหน จะดูเฉพาะ SALE หรือ จะดูทั้ง SALE และ FORECAST ส่วนความแตกต่าง นั้นอยู่ที่บรรทัดที่ 5 ของตารางที่ 1 จะต้องไม่มาปรากฎในตารางที่ 2 ครับ
5 @R01976
ถ้าไม่คัดลอกไป ก็สามารถใช้ Query ดึงขึ้นมาแสดงเลยก็ได้ครับ เช่น Select CODE, QTY, CONDITION From Table1 Where Condition IN ('Sale','Forcast'); ไม่รู้ว่าตรงกับความต้องการหรือเปล่านะครับ คือผมไม่เห็นความจำเป็นที่จะสร้างมีตารางที่ 2 อีก ถ้ายังจะนำไปไว้ในตารางที่ 2 ก็เปลี่ยน Query ข้างบนให้เป็น Append query แทน
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.0396s