กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
650 1
URL.หัวข้อ /
URL
Left(), Right(), Mid() ใน MySQL/PostgreSQL:
ใน MySQL จะมีฟังก์ชันเหล่านี้เหมือนใน Access ทุกประการครับ
ลองอ่านเพิ่มเติมได้ที่ http://www.mysql.com/doc/en/String_functions.html#IDX1196
แล้วใน PostgreSQL ใช้อะไร?
ส่วน Postgres ไม่มีให้ แต่สามารถใช้ SubStr() หรือ SubString() ทำหน้าที่แทน Mid() แทนครับ
mydb=# SELECT SUBSTR('Quadratically',5,6);
substr
--------
ratica
(1 row)
หรือ
mydb=# SELECT SUBSTRING('Quadratically' from 5 for 6);
substring
-----------
ratica
(1 row)
MS SQL Server ไม่มี Mid() เหมือนกัน จึงใช้แบบนี้ด้วย
สำหรับ Right() นั้น ก็ประยุกต์ใช้ SubStr() กับ Char_Length() เข้วช่วย
-2 ตัวขวาสุด
mydb=# select substr('Quadratically',char_length('Quadratically')-2+1,2);
substr
--------
ly
(1 row)
-4 ตัวขวาสุด
mydb=# select substr('Quadratically',char_length('Quadratically')-4+1,4);
substr
--------
ally
(1 row)
ถ้าเป็น Left() จะใช้
- 4 ตัวซ้ายสุด
mydb=# select substr('Quadratically',1,4);
substr
--------
Quad
(1 row)
- 2 ตัวซ้ายสุด
mydb=# select substr('Quadratically',1,2);
substr
--------
Qu
(1 row)
หรือจะเขียนเป็นฟังก์ชัน Left() ไว้ใช้เลยก็ได้ ซึ่งเราสามารถสร้าง Function ใน PostgreSQL
ลองดูแบบนี้ครับ
mydb=# create function left(text, integer) returns text as '
mydb'# declare
mydb'# begin
mydb'# return substr($1,1,$2);
mydb'# end;
mydb'# 'language 'plpgsql';
CREATE
mydb=# select left('Quadratically',4);
left
------
Quad
(1 row)
ถ้าท่านอยากจะลองสร้าง Right() ก็ทดสอบได้เลยครับ โดยดูตัวอย่างจากข้างบนประกอบด้วย
ลองอ่านเพิ่มเติมได้ที่ http://www.mysql.com/doc/en/String_functions.html#IDX1196
แล้วใน PostgreSQL ใช้อะไร?
ส่วน Postgres ไม่มีให้ แต่สามารถใช้ SubStr() หรือ SubString() ทำหน้าที่แทน Mid() แทนครับ
mydb=# SELECT SUBSTR('Quadratically',5,6);
substr
--------
ratica
(1 row)
หรือ
mydb=# SELECT SUBSTRING('Quadratically' from 5 for 6);
substring
-----------
ratica
(1 row)
MS SQL Server ไม่มี Mid() เหมือนกัน จึงใช้แบบนี้ด้วย
สำหรับ Right() นั้น ก็ประยุกต์ใช้ SubStr() กับ Char_Length() เข้วช่วย
-2 ตัวขวาสุด
mydb=# select substr('Quadratically',char_length('Quadratically')-2+1,2);
substr
--------
ly
(1 row)
-4 ตัวขวาสุด
mydb=# select substr('Quadratically',char_length('Quadratically')-4+1,4);
substr
--------
ally
(1 row)
ถ้าเป็น Left() จะใช้
- 4 ตัวซ้ายสุด
mydb=# select substr('Quadratically',1,4);
substr
--------
Quad
(1 row)
- 2 ตัวซ้ายสุด
mydb=# select substr('Quadratically',1,2);
substr
--------
Qu
(1 row)
หรือจะเขียนเป็นฟังก์ชัน Left() ไว้ใช้เลยก็ได้ ซึ่งเราสามารถสร้าง Function ใน PostgreSQL
ลองดูแบบนี้ครับ
mydb=# create function left(text, integer) returns text as '
mydb'# declare
mydb'# begin
mydb'# return substr($1,1,$2);
mydb'# end;
mydb'# 'language 'plpgsql';
CREATE
mydb=# select left('Quadratically',4);
left
------
Quad
(1 row)
ถ้าท่านอยากจะลองสร้าง Right() ก็ทดสอบได้เลยครับ โดยดูตัวอย่างจากข้างบนประกอบด้วย
1 Reply in this Topic. Dispaly 1 pages and you are on page number 1
1 @R06775
Time: 0.1296s