แชร์ผ่าน


สตริงรูปแบบวันที่และเวลามาตรฐาน

สตริงรูปแบบวันที่และเวลามาตรฐานใช้อักขระเดี่ยวเป็นตัวระบุรูปแบบเพื่อกําหนดการแสดงข้อความของค่าเวลาและวันที่ สตริงรูปแบบวันที่และเวลาที่มีอักขระมากกว่าหนึ่งตัว รวมถึงช่องว่างจะถูกตีความว่าเป็น สตริงรูปแบบวันที่และเวลาแบบกําหนดเอง สตริงรูปแบบมาตรฐานหรือแบบกําหนดเองสามารถใช้เพื่อกําหนดข้อความที่แสดงผลลัพธ์จากการดําเนินการจัดรูปแบบ

ตารางของตัวระบุรูปแบบ

ตารางต่อไปนี้อธิบายตัวระบุรูปแบบวันที่และเวลามาตรฐาน

ตัวระบุรูปแบบ คำอธิบาย ตัวอย่าง
"d" รูปแบบวันที่แบบสั้น

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบวันที่แบบสั้น ("d")
2009-06-15T13:45:30 -> 6/15/2009 (en-US)

2009-06-15T13:45:30 -> 15/06/2009 (fr-FR)

2009-06-15T13:45:30 -> 2009/06/15 (ja-JP)
"D" รูปแบบวันที่แบบยาว

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบวันที่แบบยาว ("D")
2009-06-15T13:45:30 -> วันจันทร์ที่ 15 มิถุนายน 2009 (en-US)

2009-06-15T13:45:30 -> понедельник, 15 июня 2009 г (ru-RU)

2009-06-15T13:45:30 -> Montag, 15. Juni 2009 (de-DE)
"f" รูปแบบวันที่/เวลาแบบเต็ม (เวลาแบบสั้น)

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบวันที่แบบย่อ ("f") แบบเต็ม
2009-06-15T13:45:30 -> วันจันทร์ที่ 15 มิถุนายน 2009 1:45 PM (en-US)

2009-06-15T13:45:30 -> den 15 juni 2009 13:45 (sv-SE)

2009-06-15T13:45:30 -> Δευτέρα, 15 Ιουνίου 2009 1:45 μ (el-GR)
"F" รูปแบบวันที่/เวลาแบบเต็ม (เวลาแบบยาว)

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบวันที่แบบยาว ("F") แบบเต็ม
2009-06-15T13:45:30 -> วันจันทร์ที่ 15 มิถุนายน 2009 เวลา 1:45:30 PM (en-US)

2009-06-15T13:45:30 -> den 15 juni 2009 13:45:30 (sv-SE)

2009-06-15T13:45:30 -> Δευτέρα, 15 Ιουνίου 2009 1:45:30 μ (el-GR)
"g" รูปแบบวันที่/เวลาทั่วไป (เวลาแบบสั้น)

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบวันที่แบบสั้น ("g") ทั่วไป
2009-06-15T13:45:30 -> 6/15/2009 13:45 PM (en-US)

2009-06-15T13:45:30 -> 15/06/2009 13:45 (es-ES)

2009-06-15T13:45:30 -> 2009/6/15 13:45 (zh-CN)
"G" รูปแบบวันที่/เวลาทั่วไป (เวลาแบบยาว)

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบวันที่แบบยาว ("G") ทั่วไป
2009-06-15T13:45:30 -> 6/15/2009 13:45:30 PM (en-US)

2009-06-15T13:45:30 -> 15/06/2009 13:45:30 (es-ES)

2009-06-15T13:45:30 -> 2009/6/15 13:45:30 (zh-CN)
"M", "m" รูปแบบเดือน/วัน

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบเดือน ("M", "m")
2009-06-15T13:45:30 -> 15 มิถุนายน (en-US)

2009-06-15T13:45:30 -> 15. juni (da-DK)

2009-06-15T13:45:30 -> 15 Juni (id-ID)
"O", "o" รูปแบบวันที่/เวลาไปกลับ

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบไปกลับ ("O", "o")
2009-06-15T13:45:30 (ท้องถิ่น) --> 2009-06-15T13:45:30.000000-07:00

2009-06-15T13:45:30 (Utc) --> 2009-06-15T13:45:30.0000000+00:00

2009-06-15T13:45:30 (ไม่ระบุ) --> 2009-06-15T13:45:30.000000
"R", "r" รูปแบบ RFC1123

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบ RFC1123 ("R", "r")
2009-06-15T13:45:30 -> จ. 15 มิ.ย. 2009 13:45:30 GMT
"s" รูปแบบวันที่/เวลาที่สามารถเรียงลําดับได้

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบที่สามารถเรียงลําดับได้ ("s")
2009-06-15T13:45:30 (ท้องถิ่น) -> 2009-06-15T13:45:30

2009-06-15T13:45:30 (Utc) -> 2009-06-15T13:45:30
"t" รูปแบบเวลาแบบสั้น

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบเวลาสั้น ("t")
2009-06-15T13:45:30 -> 13:45 PM (en-US)

2009-06-15T13:45:30 -> 13:45 (ชม.)

2009-06-15T13:45:30 -> 01:45 م (ar-EG)
"T" รูปแบบเวลาแบบยาว

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบแบบยาว ("T")
2009-06-15T13:45:30 -> 1:45:30 PM (en-US)

2009-06-15T13:45:30 -> 13:45:30 (ชม.)

2009-06-15T13:45:30 -> 01:45:30 م (ar-EG)
"u" รูปแบบวันที่/เวลาที่สามารถเรียงลําดับได้ทั่วไป

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบสากลที่สามารถเรียงลําดับได้ ("u")
2009-06-15T13:45:30 -> 2009-06-15 13:45:30Z
"Y", "y" รูปแบบเดือนปี

ข้อมูลเพิ่มเติม: ตัวระบุรูปแบบเดือนปี ("Y")
2009-06-15T13:45:30 -> มิถุนายน 2009 (en-US)

2009-06-15T13:45:30 -> juni 2009 (da-DK)

2009-06-15T13:45:30 -> Juni 2009 (id-ID)
อักขระเดี่ยวอื่นๆ ตัวระบุที่ไม่รู้จัก แสดงข้อผิดพลาดของนิพจน์เวลาทํางาน

วิธีการทํางานของสตริงรูปแบบมาตรฐาน

ในการดําเนินการจัดรูปแบบ สตริงรูปแบบมาตรฐานเป็นเพียงนามแฝงสําหรับสตริงรูปแบบแบบกําหนดเอง ประโยชน์ของการใช้นามแฝงในการอ้างถึงสตริงรูปแบบแบบกําหนดเองคือ แม้ว่านามแฝงยังคงไม่แปรเปลี่ยน แต่สตริงรูปแบบแบบกําหนดเองอาจแตกต่างกันได้ นี่เป็นสิ่งสําคัญเนื่องจากการแสดงสตริงของค่าวันที่และเวลาโดยทั่วไปจะแตกต่างกันไปตามวัฒนธรรม ตัวอย่างเช่น สตริงรูปแบบมาตรฐาน "d" ระบุว่าจะแสดงค่าวันที่และเวลาโดยใช้รูปแบบวันที่แบบสั้น สําหรับวัฒนธรรมที่ไม่แปรผัน รูปแบบนี้คือ "ดด/วว/ปปปปป" สําหรับวัฒนธรรม fr-FR มันคือ "dd/MM/yyyy" สําหรับวัฒนธรรม ja-JP มันเป็น "yyyy/MM/dd"

ถ้าสตริงรูปแบบมาตรฐานในแผนที่การดําเนินการจัดรูปแบบไปยังสตริงรูปแบบที่กําหนดเองของวัฒนธรรมที่เฉพาะเจาะจง แอปพลิเคชันของคุณสามารถกําหนดวัฒนธรรมเฉพาะที่มีการใช้สตริงรูปแบบแบบกําหนดเองในหนึ่งในวิธีเหล่านี้:

  • คุณสามารถใช้วัฒนธรรมค่าเริ่มต้น (หรือปัจจุบัน) ได้ ตัวอย่างต่อไปนี้แสดงวันที่โดยใช้รูปแบบวันที่แบบสั้นของวัฒนธรรมปัจจุบัน ในกรณีนี้ วัฒนธรรมปัจจุบันคือ en-US

    let
        Source =
        {
            Date.ToText(#date(2024, 3, 15), [Format = "d"])
            //Displays 3/15/2024
        }
    in
        Source
    
  • คุณสามารถส่งผ่านวัฒนธรรมที่ใช้ในการจัดรูปแบบวันที่ตามกฎของวัฒนธรรมเฉพาะนั้น ตัวอย่างต่อไปนี้แสดงวันที่โดยใช้รูปแบบวันที่แบบสั้นของวัฒนธรรม pt-BR

    let
        Source =
        {
            Date.ToText(#date(2024, 3, 15), [Format = "d", Culture = "pt-BR"])
            //Displays 15/03/2024
       }
    in
        Source
    

ในบางกรณี สตริงรูปแบบมาตรฐานทําหน้าที่เป็นตัวย่อที่สะดวกสําหรับสตริงรูปแบบแบบกําหนดเองที่ยาวกว่าที่ไม่แปรเปลี่ยน สตริงรูปแบบมาตรฐานสี่สตริงจะอยู่ในหมวดหมู่นี้: "O" (หรือ "o"), "R" (หรือ "r"), "s" และ "u" สตริงเหล่านี้สอดคล้องกับสตริงรูปแบบแบบกําหนดเองที่กําหนดโดยวัฒนธรรมที่ไม่แปรเปลี่ยน พวกเขาสร้างการแทนค่าวันที่และเวลาของสตริงที่มีวัตถุประสงค์ที่จะเหมือนกันในวัฒนธรรมต่าง ๆ ตารางต่อไปนี้แสดงข้อมูลเกี่ยวกับสตริงรูปแบบวันที่และเวลามาตรฐานสี่รายการเหล่านี้

สตริงรูปแบบมาตรฐาน กําหนดโดย สตริงรูปแบบแบบกําหนดเอง
"O" หรือ "o" None yyyy'-'MM'-'dd'T'HH':'mm':'ss'' fffffffK
"R" หรือ "r" ข้อมูลจําเพาะ IETF RFC 1123 ddd, dd MMM yyyy HH':'mm'mm'ss 'GMT'
"s" ISO 8601 yyyy'-'MM'-'dd'T'HH':'mm'ss
"u" สามารถเรียงลําดับได้เนื่องจากใช้เลขศูนย์นําหน้าสําหรับปี เดือน วัน ชั่วโมง นาที และวินาที yyyy'-'MM'-'dd HH':'mm':'ss'Z'

สตริงรูปแบบมาตรฐานยังสามารถใช้ในการแยกวิเคราะห์การดําเนินการ ซึ่งจําเป็นต้องใช้สตริงอินพุตเพื่อให้สอดคล้องกับรูปแบบเฉพาะสําหรับการดําเนินการแยกวิเคราะห์เพื่อให้ประสบความสําเร็จ สตริงรูปแบบมาตรฐานจํานวนมากแมปไปยังสตริงรูปแบบแบบกําหนดเองหลายสตริง ดังนั้นค่าวันที่และเวลาสามารถแสดงในรูปแบบที่หลากหลายและการดําเนินการแยกวิเคราะห์ยังคงประสบความสําเร็จ

ส่วนต่อไปนี้อธิบายตัวระบุรูปแบบมาตรฐานสําหรับค่าวันที่, วันที่เวลา, โซนวันที่เวลา และเวลา

รูปแบบวันที่

กลุ่มนี้ประกอบด้วยรูปแบบต่อไปนี้:

ตัวระบุรูปแบบวันที่แบบสั้น ("d")

ตัวระบุรูปแบบมาตรฐาน "d" แสดงรูปแบบวันที่แบบกําหนดเองที่กําหนดโดยวัฒนธรรมเฉพาะ ตัวอย่างเช่น ข้อความรูปแบบแบบกําหนดเองที่ส่งกลับโดยวัฒนธรรมที่ไม่แปรเปลี่ยนคือ "MM/dd/yyyy"

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "d" เพื่อแสดงค่าวันที่

let
    Source =
    {
        Date.ToText(#date(2024, 4, 10), [Format = "d", Culture = ""]),
        // Displays 04/10/2024

        Date.ToText(#date(2024, 4, 10), [Format = "d", Culture = "en-US"]),
        // Displays 4/10/2024

        Date.ToText(#date(2024, 4, 10), [Format = "d", Culture = "en-NZ"]),
        // Displays 10/4/2024

        Date.ToText(#date(2024, 4, 10), [Format = "d", Culture = "de-DE"])
        // Displays 10.4.2024
    }
in
    Source

กลับไปที่ตาราง

ตัวระบุรูปแบบวันที่แบบยาว ("D")

ตัวระบุรูปแบบมาตรฐาน "D" แสดงถึงรูปแบบวันที่แบบกําหนดเองที่กําหนดโดยวัฒนธรรมเฉพาะ ตัวอย่างเช่น สตริงรูปแบบแบบกําหนดเองสําหรับวัฒนธรรมที่ไม่แปรปรวนคือ "dddd, dd MMMM yyyy"

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "D" เพื่อแสดงค่าวันที่และเวลา

let
    Source =
    {
        Date.ToText(#date(2024, 4, 10), [Format = "D", Culture = ""]),
        // Displays Wednesday, 10 April, 2024

        Date.ToText(#date(2024, 4, 10), [Format = "D", Culture = "en-US"]),
        // Displays Wednesday, April 10, 2024

        Date.ToText(#date(2024, 4, 10), [Format = "D", Culture = "pt-BR"]),
        // Displays quarta-feira, 10 de abril de 2024

        Date.ToText(#date(2024, 4, 10), [Format = "D", Culture = "es-MX"])
        // Displays miércoles, 10 de abril de 2024
    }
in
    Source

กลับไปที่ตาราง

รูปแบบวันที่และเวลา

กลุ่มนี้ประกอบด้วยรูปแบบต่อไปนี้:

ตัวระบุรูปแบบวันที่แบบสั้นแบบเต็ม ("f")

ตัวระบุรูปแบบมาตรฐาน "f" แสดงการรวมกันของรูปแบบวันที่แบบยาว ("D") และเวลาสั้น ("t") ซึ่งคั่นด้วยช่องว่าง

สตริงผลลัพธ์ได้รับผลกระทบจากข้อมูลการจัดรูปแบบของวัฒนธรรมเฉพาะ

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "f" เพื่อแสดงค่าวันที่และเวลา

let
    Source =
    {
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "f", Culture = "en-US"]),
        // Displays Wednesday, April 10, 2024 6:30 AM

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "f", Culture = "fr-FR"])
        // Displays mercredi 10 avril 2024 06:30
    }
in
    Source

กลับไปที่ตาราง

ตัวระบุรูปแบบวันที่แบบยาวแบบเต็ม ("F")

ตัวระบุรูปแบบมาตรฐาน "F" แสดงถึงรูปแบบวันที่และเวลาแบบกําหนดเองที่กําหนดโดยวัฒนธรรมเฉพาะ ตัวอย่างเช่น สตริงรูปแบบแบบกําหนดเองสําหรับวัฒนธรรมที่ไม่แปรปรวนคือ "dddd, dd MMMM yyyy HH:mm:ss"

สตริงผลลัพธ์ได้รับผลกระทบจากข้อมูลการจัดรูปแบบของวัฒนธรรมเฉพาะ

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "F" เพื่อแสดงค่าวันที่และเวลา

let
    Source =
    {
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "F", Culture = ""]),
        // Displays Wednesday, 10 April, 2024 06:30:00

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "F", Culture = "en-US"]),
        // Displays Wednesday, April 10, 2024 6:30:00 AM

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "F", Culture = "fr-FR"])
        // Displays mercredi 10 avril 2024 06:30:00
    }
in
    Source

กลับไปที่ตาราง

ตัวระบุรูปแบบวันที่แบบสั้น ("g") ทั่วไป

ตัวระบุรูปแบบมาตรฐาน "g" แสดงการรวมกันของรูปแบบวันที่สั้น ("d") และเวลาสั้น ("t") ที่คั่นด้วยช่องว่าง ข้อความที่เป็นผลลัพธ์ได้รับผลกระทบจากข้อมูลการจัดรูปแบบของวัฒนธรรมเฉพาะ

สตริงผลลัพธ์ได้รับผลกระทบจากข้อมูลการจัดรูปแบบของวัฒนธรรมเฉพาะ

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "g" เพื่อแสดงค่าวันที่และเวลา

let
    Source =
    {
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "g", Culture = ""]),
        // Displays 04/10/2024 06:30

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "g", Culture = "en-US"]),
        // Displays 4/10/2024 6:30 AM

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "g", Culture = "fr-BE"])
        // Displays 10-04-24 06:30
    }
in
    Source

กลับไปที่ตาราง

ตัวระบุรูปแบบวันที่แบบยาว ("G") ทั่วไป

ตัวระบุรูปแบบมาตรฐาน "G" แสดงการรวมกันของรูปแบบวันที่สั้น ("d") และเวลาที่ยาว ("T") ซึ่งคั่นด้วยช่องว่าง ข้อความที่เป็นผลลัพธ์ได้รับผลกระทบจากข้อมูลการจัดรูปแบบของวัฒนธรรมเฉพาะ

สตริงผลลัพธ์ได้รับผลกระทบจากข้อมูลการจัดรูปแบบของวัฒนธรรมเฉพาะ

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "G" เพื่อแสดงค่าวันที่และเวลา

let
    Source =
    {
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "G", Culture = ""]),
        // Displays 04/10/2024 06:30:00

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "G", Culture = "en-US"]),
        // Displays 4/10/2024 6:30:00 AM

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "G", Culture = "nl-BE"])
        // Displays 10/04/2024 6:30:00
    }
in
    Source

กลับไปที่ตาราง

ตัวระบุรูปแบบไปกลับ ("O", "o")

ตัวระบุรูปแบบมาตรฐาน "O" หรือ "o" แสดงสตริงรูปแบบวันที่และเวลาแบบกําหนดเองโดยใช้รูปแบบที่รักษาข้อมูลโซนเวลาและปล่อยสตริงผลลัพธ์ที่สอดคล้องกับ ISO 8601 สําหรับ ค่า DateTimeZone ตัวระบุรูปแบบนี้ออกแบบมาเพื่อเก็บรักษาค่าวันที่ เวลา และโซนเวลาในข้อความ

ตัวระบุรูปแบบมาตรฐาน "O" หรือ "o" สอดคล้องกับ "yyyy'-'MM'-'dd'T'HH':'mm'ss'' สตริงรูปแบบแบบกําหนดเอง fffffxxx" สําหรับค่า DateTimeZone ในข้อความนี้ คู่ของเครื่องหมายอัญกรณ์เดี่ยวที่คั่นอักขระแต่ละตัว เช่น เครื่องหมายยัติภังค์ เครื่องหมายทวิภาค และตัวอักษร "T" ระบุว่าอักขระแต่ละตัวเป็นสัญพจน์ที่ไม่สามารถเปลี่ยนแปลงได้ เครื่องหมายอัญประกาศประกาศไม่ปรากฏในสตริงผลลัพธ์

ตัวระบุรูปแบบมาตรฐาน "O" หรือ "o" (และ "yyyy'-'MM'-'T'HH':'mm'ss'' รูปแบบที่กําหนดเอง fffffffxxx") ใช้ประโยชน์จากวิธีที่ ISO 8601 แสดงข้อมูลโซนเวลาเพื่อรักษาค่า DateTimeZone ของ :

  • คอมโพเนนต์โซนเวลาของค่าวันที่และเวลา DateTimeZone.ToLocal คือออฟเซตจาก UTC (ตัวอย่างเช่น +01:00, -07:00)

  • คอมโพเนนต์โซนเวลาของค่าวันที่และเวลา DateTimeZone.ToUtc ใช้ +00.00 เพื่อแสดง UTC

เนื่องจากตัวระบุรูปแบบมาตรฐาน "O" หรือ "o" สอดคล้องกับมาตรฐานสากล การจัดรูปแบบหรือการดําเนินการแยกวิเคราะห์ที่ใช้ตัวระบุจะใช้วัฒนธรรมที่ไม่แปรผันและปฏิทินเกรกอเรียนเสมอ

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "o" เพื่อแสดงชุดของ ค่า DateTimeZone บนระบบในโซนเวลาแปซิฟิกของสหรัฐอเมริกา

let
    date1 = #datetimezone(2024, 6, 15, 13, 45, 30, 0, 0),
    Source =
    {
        Text.Format("#{0} (Unspecified) --> #{1}", {date1, DateTimeZone.ToText(date1, [Format = "O"])}),
        Text.Format("#{0} (Utc) --> #{1}", {date1, DateTimeZone.ToText(DateTimeZone.ToUtc(date1), [Format = "O"])}),
        Text.Format("#{0} (Local) --> #{1}", {date1, DateTimeZone.ToText(DateTimeZone.ToLocal(date1), [Format = "O"])})
    }
in
    Source

// The example displays the following output:
//    6/15/2024 1:45:30 PM +00:00 (Unspecified) --> 2024-06-15T13:45:30.0000000+00:00
//    6/15/2024 1:45:30 PM +00:00 (Utc) --> 2024-06-15T13:45:30.0000000+00:00
//    6/15/2024 1:45:30 PM +00:00 (Local) --> 2024-06-15T08:45:30.0000000-07:00

หมายเหตุ

ค่าที่ส่งกลับโดย DateTimeZone.ToLocal ขึ้นอยู่กับว่าคุณกําลังใช้งาน Power Query บนเครื่องหรือออนไลน์ ตัวอย่างเช่น ในตัวอย่างข้างต้นบนระบบในโซนเวลาแปซิฟิกของสหรัฐอเมริกา Power Query Desktop จะส่งกลับ -07:00 ตาม เวลาท้องถิ่น เนื่องจากมีการอ่านเวลาที่กําหนดไว้บนเครื่องคอมพิวเตอร์ของคุณ อย่างไรก็ตาม Power Query Online จะ +00:00 ส่งกลับเนื่องจากกําลังอ่านเวลาที่กําหนดบนเครื่องเสมือนบนระบบคลาวด์ซึ่งถูกตั้งค่าเป็น UTC

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "o" เพื่อสร้างสตริงที่จัดรูปแบบและจากนั้นคืนค่าวันที่และเวลาเดิมโดยเรียกใช้รูทีนการแยกวิเคราะห์วันที่และเวลา

let
    // Round-trip a local time
    #"Origin Local Date" = DateTimeZone.ToLocal(
        #datetimezone(2024, 4, 10, 6, 30, 0, 0, 0)
    ),
    #"Local Date Text" = DateTimeZone.ToText(
        #"Origin Local Date", [Format = "o"]
    ),
    #"New Local Date" = DateTimeZone.FromText(#"Local Date Text"),
    #"Local Round Trip" = Text.Format(
        "Round-tripped #{0} Local to #{1} Local.", 
        {
            DateTimeZone.ToText(#"Origin Local Date"), 
            DateTimeZone.ToText(#"New Local Date")
        }
    ),

    // Round-trip a UTC time
    #"Origin UTC Date" = DateTimeZone.ToUtc(
        #datetimezone(2024, 4, 12, 9, 30, 0, 0, 0)
    ),
    #"UTC Date Text" = DateTimeZone.ToText(
        #"Origin UTC Date", [Format = "o"]
    ),
    #"New UTC Date" = DateTimeZone.FromText(#"UTC Date Text"),
    #"UTC Round Trip" = Text.Format(
        "Round-tripped #{0} UTC to #{1} UTC.", 
        {
            DateTimeZone.ToText(#"Origin UTC Date"), 
            DateTimeZone.ToText(#"New UTC Date")
        }
    ),

    // Round-trip an 18 hour offset time
    #"Origin Offset Date" = DateTimeZone.ToLocal(
        #datetimezone(2024, 4, 10, 6, 30, 0, 0, 0) + #duration(0, 18, 0, 0)
    ),
    #"Offset Date Text" = DateTimeZone.ToText(
        #"Origin Offset Date", [Format = "o"]
    ),
    #"New Offset Date" = DateTimeZone.FromText(#"Offset Date Text"),
    #"Offset Round Trip" = Text.Format(
        "Round-tripped #{0} to #{1}.", 
        {
            DateTimeZone.ToText(#"Origin Offset Date"), 
            DateTimeZone.ToText(#"New Offset Date")
        }
    ),

    #"Round Trip Results" = 
        {#"Local Round Trip", #"UTC Round Trip", #"Offset Round Trip"}
in
    #"Round Trip Results"

// The example displays the following output in Power Query Desktop:
//    Round-tripped 4/9/2024 11:30:00 PM -07:00 Local to 4/9/2024 11:30:00 PM -07:00 Local.
//    Round-tripped 4/12/2024 9:30:00 AM +00:00 UTC to 4/12/2024 9:30:00 AM +00:00 UTC.
//    Round-tripped 4/10/2024 5:30:00 PM -07:00 to 4/10/2024 5:30:00 PM -07:00.

// The example displays the following output in Power Query Online:
//    Round-tripped 4/10/2024 6:30:00 AM +00:00 Local to 4/10/2024 6:30:00 AM +00:00 Local.
//    Round-tripped 4/12/2024 9:30:00 AM +00:00 UTC to 4/12/2024 9:30:00 AM +00:00 UTC.
//    Round-tripped 4/11/2024 12:30:00 AM +00:00 to 4/11/2024 12:30:00 AM +00:00.

กลับไปที่ตาราง

ตัวระบุรูปแบบ RFC1123 ("R", "r")

ตัวระบุรูปแบบมาตรฐาน "R" หรือ "r" แสดงสตริงรูปแบบวันที่และเวลาแบบกําหนดเองที่ไม่ได้กําหนดโดยวัฒนธรรมเฉพาะ จะเหมือนกันเสมอ โดยไม่คํานึงถึงวัฒนธรรมที่ใช้หรือผู้ให้บริการรูปแบบที่ให้มา สตริงรูปแบบแบบกําหนดเองคือ "ddd, dd MMM yyyy HH':'mm'ss 'GMT'" เมื่อใช้ตัวระบุรูปแบบมาตรฐานนี้ การจัดรูปแบบหรือการแยกวิเคราะห์จะใช้วัฒนธรรมที่ไม่แปรผันเสมอ

แม้ว่ามาตรฐาน RFC 1123 จะแสดงเวลาเป็นเวลามาตรฐานสากล (UTC) การดําเนินการจัดรูปแบบไม่ได้ปรับเปลี่ยนค่าของวันที่และเวลาที่ถูกจัดรูปแบบ ดังนั้น คุณต้องแปลงค่า DateTime เป็น UTC โดยการเรียกวิธีการฟังก์ชัน DateTimeZone.ToUtc ก่อนที่คุณจะดําเนินการจัดรูปแบบ

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "r" เพื่อแสดงค่าเวลาและวันที่บนระบบในโซนเวลาแปซิฟิกของสหรัฐอเมริกา (เจ็ดชั่วโมงหลัง UTC)

let
    date1 = #datetimezone(2024, 4, 10, 6, 30, 0, -7, 0),
    dateOffset = DateTimeZone.ToUtc(date1),
    Source = 
    {
        DateTimeZone.ToText(date1, [Format = "r"]),
        // Displays Wed, 10 Apr 2024 13:30:00 GMT

        DateTimeZone.ToText(dateOffset, [Format = "r"])
        // Displays Wed, 10 Apr 2024 13:30:00 GMT
    }
in
    Source

กลับไปที่ตาราง

ตัวระบุรูปแบบที่สามารถเรียงลําดับได้ ("s")

ตัวระบุรูปแบบมาตรฐาน "s" แสดงสตริงรูปแบบวันที่และเวลาแบบกําหนดเองที่แสดงถึงมาตรฐานที่กําหนด (ISO 8601) และเป็นแบบอ่านอย่างเดียว ดังนั้น จะเหมือนกันเสมอ โดยไม่คํานึงถึงวัฒนธรรมที่ใช้หรือผู้ให้บริการรูปแบบที่ให้มา สตริงรูปแบบแบบกําหนดเองคือ "yyyy'-'MM'dd'T'HH':'mm'ss" วัตถุประสงค์ของตัวระบุรูปแบบ "s" คือเพื่อสร้างสตริงผลลัพธ์ที่เรียงลําดับอย่างต่อเนื่องในลําดับจากน้อยไปหามากหรือจากมากไปหาน้อยโดยยึดตามค่าวันที่และเวลา

เมื่อใช้ตัวระบุรูปแบบมาตรฐานนี้ การจัดรูปแบบหรือการแยกวิเคราะห์จะใช้วัฒนธรรมที่ไม่แปรผันเสมอ

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "s" เพื่อแสดงค่าวันที่และเวลาบนระบบในโซนเวลาแปซิฟิกของสหรัฐอเมริกา

let
    Source =
    {
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "s", Culture = "en-US"])
        // Displays 2024-04-10T06:30:00
    }
in
    Source

กลับไปที่ตาราง

ตัวระบุรูปแบบสากลที่สามารถเรียงลําดับได้ ("u")

ตัวระบุรูปแบบมาตรฐาน "u" แสดงสตริงรูปแบบวันที่และเวลาแบบกําหนดเองที่เหมือนกันเสมอ โดยไม่คํานึงถึงวัฒนธรรมที่ใช้หรือผู้ให้บริการรูปแบบที่ให้มา สตริงรูปแบบแบบกําหนดเองคือ "yyyy'-'MM'dd HH':'mm'ss'Z'" รูปแบบสะท้อนถึงมาตรฐานที่กําหนดไว้ และคุณสมบัติเป็นแบบอ่านอย่างเดียว เมื่อใช้ตัวระบุรูปแบบมาตรฐานนี้ การจัดรูปแบบหรือการแยกวิเคราะห์จะใช้วัฒนธรรมที่ไม่แปรผันเสมอ

แม้ว่าสตริงผลลัพธ์ควรแสดงเวลาเป็นเวลามาตรฐานสากล (UTC) แต่ไม่มีการแปลงค่า DateTimeZone เดิมในระหว่างการดําเนินการจัดรูปแบบ ดังนั้น คุณต้องแปลง ค่า DateTimeZone เป็น UTC โดยการเรียกฟังก์ชัน DateTimeZone.ToUtc ก่อนที่จะจัดรูปแบบ

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "u" เพื่อแสดงค่าวันที่และเวลา

let
    date1 = #datetimezone(2024, 4, 10, 6, 30, 0, -7, 0),
    dateOffset = DateTimeZone.ToUtc(date1),
    Source =
    {
        DateTimeZone.ToText(dateOffset, [Format = "u"]),
        // Displays 2024-04-10 13:30:00Z
    }
in
    Source

กลับไปที่ตาราง

รูปแบบเวลา

กลุ่มนี้ประกอบด้วยรูปแบบต่อไปนี้:

ตัวระบุรูปแบบเวลาสั้น ("t")

ตัวระบุรูปแบบมาตรฐาน "t" แสดงสตริงรูปแบบวันที่และเวลาแบบกําหนดเองที่กําหนดโดยวัฒนธรรมที่ระบุ ตัวอย่างเช่น สตริงรูปแบบแบบกําหนดเองสําหรับวัฒนธรรมที่ไม่แปรเปลี่ยนคือ "HH:mm"

สตริงผลลัพธ์ได้รับผลกระทบจากข้อมูลการจัดรูปแบบของวัฒนธรรมเฉพาะ

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "t" เพื่อแสดงค่าวันที่และเวลา

let
    Source =
    {
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "t", Culture = ""]),
        // Displays 06:30
        
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "t", Culture = "en-US"]),
        // Displays 6:30 AM

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "t", Culture = "es-ES"])
        // Displays 6:30
    }
in
    Source

กลับไปที่ตาราง

ตัวระบุรูปแบบเวลานาน ("T")

ตัวระบุรูปแบบมาตรฐาน "T" แสดงสตริงรูปแบบวันที่และเวลาแบบกําหนดเองที่กําหนดโดยวัฒนธรรมเฉพาะ ตัวอย่างเช่น สตริงรูปแบบแบบกําหนดเองสําหรับวัฒนธรรมที่ไม่แปรเปลี่ยนคือ "HH:mm:ss"

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "T" เพื่อแสดงค่าวันที่และเวลา

let
    Source =
    {
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "T", Culture = ""]),
        // Displays 06:30:00
        
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "T", Culture = "en-US"]),
        // Displays 6:30:00 AM

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "T", Culture = "es-ES"])
        // Displays 6:30:00
    }
in
    Source

กลับไปที่ตาราง

รูปแบบวันที่บางส่วน

กลุ่มนี้ประกอบด้วยรูปแบบต่อไปนี้:

ตัวระบุรูปแบบเดือน ("M", "m")

ตัวระบุรูปแบบมาตรฐาน "M" หรือ "m" แสดงสตริงรูปแบบวันที่และเวลาแบบกําหนดเองที่กําหนดโดยวัฒนธรรมเฉพาะ ตัวอย่างเช่น สตริงรูปแบบแบบกําหนดเองสําหรับวัฒนธรรมที่ไม่แปรเปลี่ยนคือ "MMMM dd"

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "m" เพื่อแสดงค่าวันที่และเวลา

let
    Source =
    {
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "m", Culture = ""]),
        // Displays April 10
        
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "m", Culture = "en-US"]),
        // Displays April 10

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "m", Culture = "ms-MY"])
        // Displays 10 April
    }
in
    Source

กลับไปที่ตาราง

ตัวระบุรูปแบบเดือนปี ("Y", "y")

ตัวระบุรูปแบบมาตรฐาน "Y" หรือ "y" แสดงสตริงรูปแบบวันที่แบบกําหนดเองที่กําหนดโดยวัฒนธรรมเฉพาะ ตัวอย่างเช่น สตริงรูปแบบแบบกําหนดเองสําหรับวัฒนธรรมที่ไม่แปรปรวนคือ "yyyy MMMM"

ตัวอย่างต่อไปนี้ใช้ตัวระบุรูปแบบ "y" เพื่อแสดงค่าวันที่และเวลา

let
    Source =
    {
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "Y", Culture = ""]),
        // Displays 2024 April
        
        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "Y", Culture = "en-US"]),
        // Displays April 2024

        DateTime.ToText(#datetime(2024, 4, 10, 6, 30, 0), [Format = "y", Culture = "af-ZA"])
        // Displays April 2024
    }
in
    Source

กลับไปที่ตาราง