ทำ query แสดงผลเป็น group ของ ตัวอักษรภาษาไทย


    ผมต้องการทำ query ข้อมูลของชื่อที่เป็นภาษาไทยแล้วให้แสดงผลเป็น group ของ ตัวอักษรภาษาไทย เช่น ก-ข-ท (กรทอง, กีรติ, ขัตติยา, ทนา, เทพ)

    

    ต้องเขียนยังไงครับ  


28 พ.ย. 2553 5 1,399

ORDER BY name ASC ก็ได้แล้วครับ เพราะมันจะเรียงตามลำดับตัวอักษรให้ ได้ผลลัพท์ตามนี้เลย กรทอง, กีรติ, ขัตติยา, ทนา, เทพ


#1


    ขอบคุณครับ แต่ที่ต้องการคือแบบนี้ครับ

    

    ตัวอักษรตัวแรกของแต่ละ record แล้วมาจัด group ครับ

    จากตัวอย่าง ก็จะได้เป็นแค่ ตัวอักษรแรก คือ ก  ,  ข  , ท  

    กรทอง ,กีรติ   ==> ก

    ขัตติยา         ==>  ข

    ทนา, เทพ     ==>  ท

    

    ขอบคุณครับ


#2

ถ้าต้องการจัดกลุ่มแบบที่ว่า ต้องทำที่ PHP นะครับ เอาแนวคิดง่ายๆ ไปลองดัดแปลงดู



<?php

    $datas = array('กรทอง', 'กีรติ', 'ขัตติยา', 'ทนา', 'เทพ');

    $groups = array();

    foreach($datas AS $value) {

        $groups[$value{0}][] = $value;

    }

    print_r($groups);

?>




ข้อเสียของโค้ดด้านบน คือ ไม่สามารถใช้งานกับ UTF-8 ได้ และ ไม่รวมกลุ่มสระให้


#3


    ขอบคุณครับ จะลองดูครับ


#4


    <?php

        $datas = array('กรทอง', 'กีรติ', 'ขัตติยา', 'ทนา', 'เทพ');

        $groups = array();

        foreach($datas AS $value) {



            $value = str_replace(array('สระเอ','สระโอ','สระนำหน้าทั้งหมด'),'',$value);

             $groups[$value{0}][] = $value;

        }

        print_r($groups);

    ?>



    

    ลองเขียนแบบนี้ครับ


#5
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^