สอบถามการ Select ข้อมูล 2 เงื่อนไขครับ



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

15 ส.ค. 61 , 09:33:09
อ่าน 519 ครั้ง

Cyber O haiyo

  • สมาชิกไท.Access
  • กระทู้: 5

    • ดูรายละเอียด

สวัสดีครับ ขอความช่วยเหลือเกี่ยวกับการ Select ข้อมูลครับ

ผมมีข้อมูลใน table_A ประมาณนี้ครับ

Charge          Code
10001          PEN0001
10002          RUB0001
10001          RUB0001
10003          PEN0001
10004          PEN0001

และ Table_B
Charge          Code
10001          PEN0001
10002          RUB0001
10003          PEN0001
10004          PEN0001

ถ้าผมต้องการ Select ข้อมูลที่ table_a
"โดยเลือก Code ที่ไม่ซ้ำกันในค่า Charge จาก table_b"
จากตารางด้านบน จะได้ผลลัพธ์แบบนี้ครับ

Charge          Code
10001          RUB0001

จะต้องเขียนอย่างไรครับ

ผมลองใช้
select * from table_a
where charge not in(select code from Table_b) แล้วไม่ได้ครับ รบกวนชี้แนะทีครับ

ขอบคุณครับ
« แก้ไขครั้งสุดท้าย: 15 ส.ค. 61 , 10:07:00 โดย Cyber O haiyo »

 

15 ส.ค. 61 , 10:24:21
ตอบกลับ #1

ปิ่นณรงค์

: สอบถามการ Select ข้อมูล 2 เงื่อนไขครับ
« ตอบกลับ #1 เมื่อ: 15 ส.ค. 61 , 10:24:21 »
โค๊ด: [Select]
SELECT table_a.Charge, table_a.Code
FROM table_a INNER JOIN table_b ON table_a.Charge = table_b.Charge
WHERE (((table_b.Code)<>[table_a].[Code]));
:love: :grin:
 
โพสต์นี้ได้รับคำขอบคุณจาก: Cyber O haiyo

15 ส.ค. 61 , 13:05:11
ตอบกลับ #2

Cyber O haiyo

  • สมาชิกไท.Access
  • กระทู้: 5

    • ดูรายละเอียด

: สอบถามการ Select ข้อมูล 2 เงื่อนไขครับ
« ตอบกลับ #2 เมื่อ: 15 ส.ค. 61 , 13:05:11 »
โค๊ด: [Select]
SELECT table_a.Charge, table_a.Code
FROM table_a INNER JOIN table_b ON table_a.Charge = table_b.Charge
WHERE (((table_b.Code)<>[table_a].[Code]));

เอ ... ผมลองเช็คข้อมูลแล้วทั้ง 2 table ปรากฏว่า มัน มีข้อมูลทั้ง 2 ฝั่งทุกตัวเลยครับ  :sweat:
แต่ที่โค้ดมันเจอเพราะ มันสลับแถวกันครับ เช่น

Table A                                         Table B
Charge          Code               Charge          Code
10001          PEN0001          10001          ABC0001
10001          ABC0001          10001          PEN0001



« แก้ไขครั้งสุดท้าย: 15 ส.ค. 61 , 13:18:41 โดย Cyber O haiyo »

 

15 ส.ค. 61 , 14:54:25
ตอบกลับ #3

ปิ่นณรงค์

: สอบถามการ Select ข้อมูล 2 เงื่อนไขครับ
« ตอบกลับ #3 เมื่อ: 15 ส.ค. 61 , 14:54:25 »
ที่มุมมองออกแบบ กดไม่แสดง ข้อมูลของ table_b ก็ได้แล้วครับ เพราะเทเบิ้ล B เอามาเปรียบเทียบเฉยๆ
:love: :grin:
 

15 ส.ค. 61 , 14:57:20
ตอบกลับ #4

Cyber O haiyo

  • สมาชิกไท.Access
  • กระทู้: 5

    • ดูรายละเอียด

: สอบถามการ Select ข้อมูล 2 เงื่อนไขครับ
« ตอบกลับ #4 เมื่อ: 15 ส.ค. 61 , 14:57:20 »
ที่มุมมองออกแบบ กดไม่แสดง ข้อมูลของ table_b ก็ได้แล้วครับ เพราะเทเบิ้ล B เอามาเปรียบเทียบเฉยๆ

อ่อ เปล่าครับ อ. คือผมต้องเขียน Schedule Copy data จาก B ไป A ทุกวันใน SQL โดยต้องใช้คำสั่งพวกนี้น่ะครับ

 

15 ส.ค. 61 , 15:10:44
ตอบกลับ #5

TTT

: สอบถามการ Select ข้อมูล 2 เงื่อนไขครับ
« ตอบกลับ #5 เมื่อ: 15 ส.ค. 61 , 15:10:44 »
คิดว่าที่คุณเขียนไว้ตั้งแต่แรกก็ใช้ได้แล้วมั้งครับ แต่ให้ต่อฟิลด์ลงไปเพิ่ม ประมาณนี้

select * from table_a
where charge & code not in(select charge & code from Table_b)

ไม่รู้ว่าเข้าใจความต้องการของคุณถูกไม๊นะครับ

ปล. การใช้ซับคิวรี่ หากข้อมูลมีจำนวนมากๆ จะทำให้คำนวณได้ช้า
ฐานข้อมูลเป็นเรื่องใกล้ตัว ใครๆก็ทำฐานข้อมูลเองได้นะครับhttp://www.youtube.com/c/AccessCreator link
 
โพสต์นี้ได้รับคำขอบคุณจาก: Cyber O haiyo

15 ส.ค. 61 , 15:35:49
ตอบกลับ #6

Cyber O haiyo

  • สมาชิกไท.Access
  • กระทู้: 5

    • ดูรายละเอียด

: สอบถามการ Select ข้อมูล 2 เงื่อนไขครับ
« ตอบกลับ #6 เมื่อ: 15 ส.ค. 61 , 15:35:49 »
คิดว่าที่คุณเขียนไว้ตั้งแต่แรกก็ใช้ได้แล้วมั้งครับ แต่ให้ต่อฟิลด์ลงไปเพิ่ม ประมาณนี้

select * from table_a
where charge & code not in(select charge & code from Table_b)

ไม่รู้ว่าเข้าใจความต้องการของคุณถูกไม๊นะครับ

ปล. การใช้ซับคิวรี่ หากข้อมูลมีจำนวนมากๆ จะทำให้คำนวณได้ช้า

ผมลองแล้วครับ มันไม่เจอข้อมูลใดๆ เลยครับ
แต่อย่างที่ อ.ปิ่นณรงค์ เกือบได้ละครับ เพียงแต่ว่า โค้ดมันมองว่าเลข Charge ซ้ำแต่ code ไม่ซ้ำ เพราะบรรทัดมันสลับกันเฉยๆ ครับ

 

15 ส.ค. 61 , 15:52:20
ตอบกลับ #7

ปิ่นณรงค์

: สอบถามการ Select ข้อมูล 2 เงื่อนไขครับ
« ตอบกลับ #7 เมื่อ: 15 ส.ค. 61 , 15:52:20 »
SELECT *
FROM table_a
WHERE (charge & code not in(select charge & code from Table_b));

ลองดูครับได้ไหมแบบที่อาจารย์ TTT ว่าไว้ผมเพิ่มเติมนิดหน่อย
ตัวอย่างด้านล่าง
« แก้ไขครั้งสุดท้าย: 15 ส.ค. 61 , 15:55:37 โดย ปิ่นณรงค์ »
:love: :grin:
 
โพสต์นี้ได้รับคำขอบคุณจาก: Cyber O haiyo

31 ส.ค. 61 , 20:22:38
ตอบกลับ #8

nonc31

: สอบถามการ Select ข้อมูล 2 เงื่อนไขครับ
« ตอบกลับ #8 เมื่อ: 31 ส.ค. 61 , 20:22:38 »
ใช้คิวรี่   :cool: :XD:
SELECT A.Charge, A.Code
FROM A LEFT JOIN B ON (A.Code = B.Code) AND (A.Charge = B.Charge)
WHERE (((B.Charge) Is Null) AND ((B.Code) Is Null));

 


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