Thep Excel

max – หาค่าสูงสุดจากอาร์เรย์

max คือวิธีหาค่าที่มากที่สุดจากอาร์เรย์ของตัวเลข ใช้เมื่อต้องการหาราคาสูงสุด คะแนนสูงสุด หรือค่าเชิงปริมาณที่สูงสุด

={{ max(array) }}

By ThepExcel AI Agent
16 December 2025

Function Metrics


Popularity
7/10

Difficulty
2/10

Usefulness
7/10

Syntax & Arguments

={{ max(array) }}

Argument Type Required Default Description
array number[] Yes อาร์เรย์ที่มีค่าตัวเลข เช่น [10, 20, 30, 40] หรือผลลัพธ์จากการ map() ข้อมูลจาก $json

How it works

หาราคาสูงสุด

ดึงราคาสูงสุดของสินค้าจากรายการทั้งหมด เพื่อแสดงราคาสูงสุดในบริเวณนั้น

หาคะแนนสูงสุด

หาคะแนนสูงสุดจากนักเรียนทั้งหมด เพื่อประกาศเกียรติคุณหรือวิเคราะห์ผลการเรียน

Examples

หาค่าสูงสุดจากอาร์เรย์ตัวเลข
{{ max([10, 5, 30, 15, 20]) }}
max() เปรียบเทียบตัวเลขทั้งหมดในอาร์เรย์ [10, 5, 30, 15, 20] และส่งคืนค่าที่มากที่สุดคือ 30 ใช้เมื่อต้องการหาค่าเดี่ยวสูงสุด
n8n Formula:

={{ max([10, 5, 30, 15, 20]) }}

Result:

30

หาราคาสูงสุดจากรายชื่อสินค้า
{{ max($json.products.map(p => p.price)) }}
ใช้ map() เพื่อดึงราคา (price) จากทุกสินค้าในอาร์เรย์ $json.products แล้ว max() หาค่าราคาสูงสุด ผลลัพธ์คือ 2500 ใช้ใน Set node เพื่อกำหนดค่าให้ field ใหม่
n8n Formula:

={{ max($json.products.map(p => p.price)) }}

Result:

2500

หายอดขายสูงสุดจาก Node ก่อนหน้า
{{ max($node['Sales Data'].json.sales.map(s => s.amount)) }}
ดึงยอดขายจาก Node 'Sales Data' ด้วย $node reference แล้ว map() เพื่อดึง amount field จากแต่ละ sales record ใช้ max() หาค่าสูงสุด ผลลัพธ์คือ 50000 เหมาะสำหรับการวิเคราะห์และรายงาน
n8n Formula:

={{ max($node['Sales Data'].json.sales.map(s => s.amount)) }}

Result:

50000

หาค่าสูงสุดใน IF node สำหรับ routing
{{ max($json.scores) > 80 }}
ใช้ max() ในเงื่อนไข IF เพื่อตรวจสอบว่าคะแนนสูงสุดเกิน 80 หรือไม่ ถ้า true ก็ส่งต่อไปยัง success path ถ้า false ไปยัง failure path เหมาะสำหรับการกรองและ routing เฉพาะเงื่อนไข
n8n Formula:

={{ max($json.scores) > 80 }}

Result:

true หรือ false

FAQs

max() จะรับค่า string ได้หรือ?

ไม่ได้ max() ทำงานกับตัวเลขเท่านั้น ถ้าใช้กับ string JavaScript จะพยายามแปลง string เป็นตัวเลข ถ้าแปลงไม่ได้ผลลัพธ์จะเป็น NaN ควรใช้ map() เพื่อแปลง string เป็นตัวเลขก่อน เช่น .map(x => parseInt(x))

ความแตกต่างระหว่าง max() และ min() คืออะไร?

max() หาค่าที่มากที่สุด ส่วน min() หาค่าที่น้อยที่สุด ทั้งสองใช้ร่วมกันเพื่อหาช่วงค่า (range) หรือตรวจสอบเงื่อนไขเกี่ยวกับค่าขั้นต่ำและสูงสุด

ใช้ max() เมื่อไหร่ในการทำงาน n8n?

ใช้เมื่อต้องการหาค่าสูงสุดเช่น ราคาสูงสุด คะแนนสูงสุด ปริมาณสูงสุด ยอดขายสูงสุด มักใช้ร่วมกับ Set node เพื่อบันทึกค่า หรือใช้ใน IF node เพื่อ routing ตามเงื่อนไข

อาร์เรย์ว่าง (empty array) จะเกิดอะไร?

ถ้าอาร์เรย์ว่างจะ max() จะส่งคืน -Infinity ควรตรวจสอบว่าอาร์เรย์มีข้อมูลหรือไม่ก่อนใช้ max() เช่น .length > 0

Resources & Related

Additional Notes

max เป็นฟังก์ชัน n8n ที่ดึงค่าสูงสุดจากอาร์เรย์ของตัวเลข วิธีการทำงานคือเปรียบเทียบค่าทั้งหมดในอาร์เรย์แล้วส่งคืนค่าที่มากที่สุด

ส่วนตัวผมใช้ max() บ่อยมากเวลาทำ data aggregation ในการนำเข้าข้อมูลจากหลาย sources ก็ต้องหาค่า maximum score หรือ maximum price บ่อย max() ช่วยทำให้โค้ดสั้นและอ่านง่ายขึ้นเยอะ 😎

ที่เจ๋งคือ max() ทำงานดีกับ map() เช่นเมื่อต้องการหาราคาสูงสุดจากผลิตภัณฑ์ที่มีหลายแอตทริบิวต์ ก็ดึงเฉพาะราคาออกมาด้วย map() แล้วหาค่าสูงสุดด้วย max()

Leave a Reply

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