Thep Excel

NATURALINNERJOIN – รวมตารางแบบ Inner Join ตามคอลัมน์ชื่อเดียวกัน

NATURALINNERJOIN ทำ inner join ระหว่าง LeftTable และ RightTable โดยใช้คอลัมน์ชื่อเดียวกันเป็นคีย์การจับคู่ คืนผลลัพธ์เฉพาะแถวที่จับคู่ได้ทั้งสองตาราง และมักใช้ร่วมกับ SELECTCOLUMNS เพื่อจัดชื่อคอลัมน์ให้ตรงกัน

=NATURALINNERJOIN(<LeftTable>, <RightTable>)

By ThepExcel AI Agent
13 December 2025

Function Metrics


Popularity
4/10

Difficulty
5/10

Usefulness
4/10

Syntax & Arguments

=NATURALINNERJOIN(<LeftTable>, <RightTable>)

Argument Type Required Default Description
LeftTable table Yes ตารางฝั่งซ้าย
RightTable table Yes ตารางฝั่งขวา

How it works

รวมตารางที่มีคีย์ชื่อเดียวกัน

เช่นตารางยอดขายและตารางสินค้า ที่มี ProductKey ชื่อเหมือนกัน

เตรียมตารางสำหรับการสรุปต่อ

รวมข้อมูลสองชุดก่อนสรุปด้วย SUMMARIZE/ADDCOLUMNS

Examples

ตัวอย่างที่ 1: Inner join ด้วยคีย์ชื่อเดียวกัน
Joined = NATURALINNERJOIN( Sales, Product )
NATURALINNERJOIN จะจับคู่ตามคอลัมน์ที่ชื่อเหมือนกัน (เช่น ProductKey) แล้วรวมคอลัมน์ของทั้งสองฝั่ง
DAX Formula:

Joined =
NATURALINNERJOIN(
    Sales,
    Product
)

Result:

ได้ตารางที่มีเฉพาะแถวที่คีย์จับคู่กันได้ทั้ง Sales และ Product

ตัวอย่างที่ 2: ปรับชื่อคอลัมน์ให้ตรงกันก่อน join (แนวคิด)
Joined (แนวคิด) = NATURALINNERJOIN( SELECTCOLUMNS(A, "Key", A[CustomerID], "ValueA", A[Value]), SELECTCOLUMNS(B, "Key", B[CustID], "ValueB", B[Value]) )
ถ้าชื่อคีย์ไม่ตรงกัน ให้ใช้ SELECTCOLUMNS สร้างคอลัมน์ชื่อเดียวกันก่อน
DAX Formula:

=Joined (แนวคิด) =
NATURALINNERJOIN(
    SELECTCOLUMNS(A, "Key", A[CustomerID], "ValueA", A[Value]),
    SELECTCOLUMNS(B, "Key", B[CustID], "ValueB", B[Value])
)

Result:

ได้ผล join ด้วยคีย์ชื่อเดียวกัน (Key)

ตัวอย่างที่ 3: สรุปต่อหลัง join (แนวคิด)
สรุป (แนวคิด) = SUMMARIZE( NATURALINNERJOIN(Sales, Product), Product[Category], "Sales", [Total Sales] )
หลัง join แล้วสามารถนำไปสรุปต่อได้ตามต้องการ
DAX Formula:

=สรุป (แนวคิด) =
SUMMARIZE(
    NATURALINNERJOIN(Sales, Product),
    Product[Category],
    "Sales", [Total Sales]
)

Result:

ได้ตารางสรุปตาม Category หลังรวมข้อมูล

FAQs

NATURALINNERJOIN ใช้คอลัมน์ไหนเป็นคีย์?

ใช้คอลัมน์ที่มีชื่อเหมือนกันในทั้งสองตาราง (และชนิดข้อมูลเข้ากันได้) เป็นคีย์การจับคู่

ต่างจาก NATURALLEFTOUTERJOIN อย่างไร?

NATURALINNERJOIN คืนเฉพาะแถวที่จับคู่ได้ทั้งสองฝั่ง ส่วน NATURALLEFTOUTERJOIN จะเก็บแถวฝั่งซ้ายไว้ทั้งหมดแม้จับคู่ไม่พบฝั่งขวา

Resources & Related

Additional Notes

NATURALINNERJOIN รวมสองตารางเข้าด้วยกันแบบ Inner Join โดยอาศัยคอลัมน์ที่มีชื่อเหมือนกัน (และชนิดข้อมูลเข้ากันได้) เป็นคีย์การจับคู่ ผลลัพธ์จะมีเฉพาะแถวที่ “จับคู่ได้ทั้งสองฝั่ง”

ถ้าชื่อคอลัมน์คีย์ของสองตารางไม่ตรงกัน ให้ปรับชื่อคอลัมน์ให้เหมือนกันก่อน (เช่นด้วย SELECTCOLUMNS) แล้วค่อยทำ NATURALINNERJOIN

Leave a Reply

Your email address will not be published. Required fields are marked *