Posted by : caeruz วันอังคารที่ 19 มีนาคม พ.ศ. 2556


สำหรับ SQL นั้นมี ฟังก์ชันมาตรฐาน (Built-In Function) ที่สามารถใช้งานได้อย่างมีประสิทธิภาพ
และเตรียมไว้พร้อมสำหรับผู้ใช้งานอยู่แล้วสามารถเรียกใช้ได้เลย เช่น ฟังก์ชัน LEFT (string, length) , RIGHT (string, length) , MID (string, position, length)  เป็นต้น แต่บางครั้งข้อมูลที่เราต้องการอาจจะมีความจำเป็นที่จะต้องปรับแต่งข้อมูลก่อนเพื่อการแสดงผลที่ถูกต้องตามความต้องการ ซึ่งด้วยเหตุนี้นั่นเองจึงเป็นเหตุผลว่าทำไมเราจึงจำเป็นต้องสร้าง function ของ SQL ขึ้นมาไว้ใช้งานเอง              (User-Defined Function: UDF)  ฟังก์ชันที่เราสร้างเองเป็นยังไง และสามารถสร้างยังไง เรามาดูกันเลยครับ

ตัวอย่างการสร้างฟังก์ชั่นใช้งานเอง

CREATE FUNCTION `SumValues`(`Val1` int,`Val2` int) RETURNS int(11)
BEGIN
RETURN (Val1 + Val2);
END
จากตัวอย่าง เป็น function สำหรับหาผลรวมของตัวเลข ซึ่งเราสามารถเรียกใช้งานได้ดังนี้
SELECT SumValues(1,2) AS SumOfTwoValues

และผลลัพธ์ที่ได้คือ SumOfTwoValues >> 1+2 = 3 นั่นเอง

เราสามารถศึกษารายละเอียดเพิ่มเติมเกี่ยวกับ การเพิ่มฟังก์ชั่นใหม่ไปยัง MySQL ( UDF ) รวมถึง
ฟังก์ชันมาตรฐาน (Built-In Function) ต่างๆเพิ่มเติมได้ที่   http://dev.mysql.com/doc/




{ 3 ความคิดเห็น... read them below or Comment }

  1. ทำไมผมสร้าง Function ไม่ได้ครับ ไม่ทราบว่ามีการคั้งค่าอะไรเพิ่มเติมหรือป่าวครับ
    ผมใช้ Appserv 2.5.8 อ่ะครับ

    ตอบลบ
    คำตอบ
    1. คุณ santhixai xaiyasan ติดปัญหายังไงบ้างครับ มี error message แสดงยังไงบ้างครับ

      ลบ
  2. #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AS
    BEGIN
    RETURN (num1+num2)
    END' at line 3

    ตอบลบ

Categories

Popular Post

ขับเคลื่อนโดย Blogger.

- Copyright © Stimulus ♥ Hooked on Developer -Metrominimalist- Powered by Blogger - Designed by Johanes Djogan - Yahoo bot last visit powered by MyPagerank.Net -

สะพานบอทฟรี - ติดgoogleอย่างง่าย ด้วยสะพานบอท