Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

03 พ.ค. 61 , 17:15:05
อ่าน 741 ครั้ง

Earth

จากรูปต้องการให้กรองค่าตรงMake tableค่ะ
ต้องการกรองทั้งหมดของType2 โดยที่เงื่อนไขคือType2ต้องไม่เท่ากับค่าในตารางNot_FG ค่ะ

 

03 พ.ค. 61 , 19:19:36
ตอบกลับ #1

สันติสุข

> Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #1 เมื่อ: 03 พ.ค. 61 , 19:19:36 »
ดับเบิ้ลคลิกที่เส้นเชื่อมโยงระหว่างเทเบิล เลือกตัวเลือกที่บอกว่า "select ALL record from [StockMonthly_Query_2-2]..." แล้วคลิกปุ่ม OK จะเห็นว่าเส้นเชื่อมโยงจะมีหัวลูกศรที่ฝั่งเทเบิล Not_FG จากนั้นให้ดับเบิลคลิกที่ฟิลด์ Type ของ Not_FG มันจะมาแสดงในตารางข้างล่าง ให้ใส่ Criteria ที่คอลัมน์นั้นเป็น Is Null
ช่วยพกถุงผ้า/ถุงพลาสติกไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 
โพสต์นี้ได้รับคำขอบคุณจาก: royaltool

04 พ.ค. 61 , 09:08:29
ตอบกลับ #2

Earth

> Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #2 เมื่อ: 04 พ.ค. 61 , 09:08:29 »
ตัวอย่างที่ให้มาสามารถรันได้ค่ะ แต่ข้อมูลในฟิวด์ TotalAmount กับ Total(M2)หายไปค่ะ
ซึ่งไม่ได้เปลี่ยนแปลงอะไร



และหลังrunเสร็จขึ้นแบบนี้


ข้อมูลในฟิลด์ที่หาย เกิดจากอะไรหรอคะ
« แก้ไขครั้งสุดท้าย: 04 พ.ค. 61 , 09:22:05 โดย Earth »

 

04 พ.ค. 61 , 09:42:04
ตอบกลับ #3

สันติสุข

> Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #3 เมื่อ: 04 พ.ค. 61 , 09:42:04 »
ฟิลด์ TotalAmount และ Total (m2) ในเทเบิล Monthly_FG อาจมี Data Type ที่ไม่ใช่ Numeric หรือไม่ก็มีขนาดที่ไม่พอเก็บข้อมูลจากฟิลด์เดียวกันใน StockMonthly_Query_2-2 ครับ

แล้วทำไม Criteria ถึงกลายเป็น Not In (...) ซึ่งต่างจากที่ผมบอกไปเป็น Is Null ?
« แก้ไขครั้งสุดท้าย: 04 พ.ค. 61 , 09:48:00 โดย สันติสุข »
ช่วยพกถุงผ้า/ถุงพลาสติกไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 

04 พ.ค. 61 , 10:14:43
ตอบกลับ #4

Earth

> Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #4 เมื่อ: 04 พ.ค. 61 , 10:14:43 »
แก้เพิ่มเติมแล้วค่ะ แต่ลองแล้วต้องใส่Not In (...)ตามรูป ข้อมูลได้มาถูกต้อง


แต่ตอน Make table ตรวจดูแล้วข้อมูลฟิลด์TotalAmountเป็น Number
TOTAL (m2) เป็นTEXTค่ะ

**ตอนนี้เปลี่ยนข้อมูลเป็น Number หมดแล้วค่ะ แต่ยังไม่แสดงข้อมูลเหมือนเดิม
« แก้ไขครั้งสุดท้าย: 04 พ.ค. 61 , 10:20:14 โดย Earth »

 

04 พ.ค. 61 , 10:40:13
ตอบกลับ #5

สันติสุข

> Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #5 เมื่อ: 04 พ.ค. 61 , 10:40:13 »
ถ้ายังมีกรอบแสดง Error Message เหมือนเดิม ก็แปลว่ายังมีข้อผิดพลาดตามที่บอกไปอยู่ ตัวเลขอาจเยอะกว่าที่ Data Type นั้นรองรับได้ แต่ถ้าไม่มีกรอบข้อความขึ้นมาแล้ว ก็แสดงว่าข้อมูลที่มาจาก StockMonthly_Query_2-2 นั้น มันไม่มีจริงๆ
ช่วยพกถุงผ้า/ถุงพลาสติกไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 

04 พ.ค. 61 , 10:59:23
ตอบกลับ #6

Earth

> Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #6 เมื่อ: 04 พ.ค. 61 , 10:59:23 »
Error Message เหมือนเดิมค่ะ
แต่สงสัยค่ะ ทำไมก่อนเชื่อมตารางNot_FG ถึงไม่เป็นคะ ข้อมูลทั้ง2ฟิลด์มาครบ ถึงแม้อีกฟิวด์จะเป็นTEXT

 

04 พ.ค. 61 , 11:19:51
ตอบกลับ #7

Earth

> Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #7 เมื่อ: 04 พ.ค. 61 , 11:19:51 »
ถ้าลองเปลี่ยนให้มาอ้างอิง Not In ([Forms]![Not_FG]![Type])
แบบนี้แทนได้ไหมคะ
โดยให้เลือกอ้างอิงType ในส่วน Form Detailทั้งหมดแทน (ไม่ใช่แค่เฉพาะที่Record focus)

 

04 พ.ค. 61 , 11:42:28
ตอบกลับ #8

สันติสุข

> > Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #8 เมื่อ: 04 พ.ค. 61 , 11:42:28 »
Error Message เหมือนเดิมค่ะ
แต่สงสัยค่ะ ทำไมก่อนเชื่อมตารางNot_FG ถึงไม่เป็นคะ ข้อมูลทั้ง2ฟิลด์มาครบ ถึงแม้อีกฟิวด์จะเป็นTEXT

ถ้าเช็คตามที่ผมบอกไปแล้วยังเป็น อันนี้ไม่ทราบแล้วครับ
ช่วยพกถุงผ้า/ถุงพลาสติกไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 

04 พ.ค. 61 , 11:43:42
ตอบกลับ #9

สันติสุข

> > Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #9 เมื่อ: 04 พ.ค. 61 , 11:43:42 »
ถ้าลองเปลี่ยนให้มาอ้างอิง Not In ([Forms]![Not_FG]![Type])
แบบนี้แทนได้ไหมคะ
โดยให้เลือกอ้างอิงType ในส่วน Form Detailทั้งหมดแทน (ไม่ใช่แค่เฉพาะที่Record focus)


เพื่ออะไรครับ ในเมื่อข้อมูลจากฟอร์มก็มาจากเทเบิล Not_FG อยู่ดี และเป็นการทำเรื่องง่ายให้เป็นเรื่องยาก และไม่มีใครทำกัน
« แก้ไขครั้งสุดท้าย: 04 พ.ค. 61 , 11:52:33 โดย สันติสุข »
ช่วยพกถุงผ้า/ถุงพลาสติกไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 

04 พ.ค. 61 , 13:04:43
ตอบกลับ #10

Earth

> Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #10 เมื่อ: 04 พ.ค. 61 , 13:04:43 »
คิดว่าจะไม่Joinเข้ากับตาราง Not_FG
แต่เรียกค่ามาจากTextboxหน้าFormแทนค่ะ
เพราะตอนนี้ยังไม่สามารถแก้Error ดังกล่าวได้

 

04 พ.ค. 61 , 15:33:37
ตอบกลับ #11

ปิ่นณรงค์

> > Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #11 เมื่อ: 04 พ.ค. 61 , 15:33:37 »
แก้เพิ่มเติมแล้วค่ะ แต่ลองแล้วต้องใส่Not In (...)ตามรูป ข้อมูลได้มาถูกต้อง


แต่ตอน Make table ตรวจดูแล้วข้อมูลฟิลด์TotalAmountเป็น Number
TOTAL (m2) เป็นTEXTค่ะ

**ตอนนี้เปลี่ยนข้อมูลเป็น Number หมดแล้วค่ะ แต่ยังไม่แสดงข้อมูลเหมือนเดิม
ที่ Type2 ไม่จำเป็นต้องกำหนด Not หรือ Not in แล้วครับ
เพราะไปกำหนด ที่ Type เป็น Is null แล้ว แค่นี้ก็จะได้ข้อมูล Type2 ที่ต้องการแล้วครับ
เพราะการ Join แบบนั้น และให้ค่า isnull แล้ว เป็นการ ตัดรายการของทาง Type2 ออกไป ตามที่ Type มีอยู่

แบบนี้ก็พอ

« แก้ไขครั้งสุดท้าย: 04 พ.ค. 61 , 15:40:24 โดย Newbies »
:love: :grin:
 

04 พ.ค. 61 , 19:26:15
ตอบกลับ #12

ปิ่นณรงค์

> Query เงื่อนไขไม่เท่ากับฟิลด์ในอีกตาราง
« ตอบกลับ #12 เมื่อ: 04 พ.ค. 61 , 19:26:15 »
ไม่ต้อง Join Table ไม่ต้อง อ้างอิงฟอร์ม ให้กำหนด
Criteria ของ Type2 เป็น
Not In (select [Type] from [Not_FG])
« แก้ไขครั้งสุดท้าย: 05 พ.ค. 61 , 02:11:01 โดย Newbies »
:love: :grin:
 
โพสต์นี้ได้รับคำขอบคุณจาก: Earth, royaltool


บอร์ดเรียนรู้ Access สำหรับคนไทย