Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

Query MySQL ด้วย Unicode Char Code

ใช้ CHAR() แปลงรหัส Unicode (Code Point) เป็นตัวอักษร

ตัวอย่างการใช้งาน

1. สร้างตารางเก็บรหัสตัวเลข

mysql> CREATE TABLE DemoTable (Value INT);
mysql> INSERT INTO DemoTable VALUES (0x41), (0x30), (0x61);  -- Hex: 65, 48, 97

2. แปลงเป็นตัวอักษร

mysql> SELECT CHAR(Value) FROM DemoTable;

ผลลัพธ์

+-------------+
| CHAR(Value) |
+-------------+
| A           |
| 0           |
| a           |
+-------------+

ฟังก์ชันที่เกี่ยวข้อง

ฟังก์ชันการทำงานตัวอย่าง
CHAR(N, ...)Code Point → CharacterCHAR(65) → 'A'
ASCII(str)Character → Code Point (ตัวแรก)ASCII('A') → 65
ORD(str)Character → Code Point (Multi-byte)ORD('า') → 3633
HEX(str)String → Hex StringHEX('A') → '41'
UNHEX(str)Hex String → Binary StringUNHEX('41') → 'A'

รหัส Unicode ที่น่าสนใจ

-- ไทย: ก = 0x0E01 (3585), ฮ = 0x0E2B (3627)
-- อีโมจิ: 😀 = 0x1F600 (128512) - ต้องใช้ utf8mb4
SELECT CHAR(0x0E01 USING utf8mb4);  -- 'ก'
SELECT CHAR(0x1F600 USING utf8mb4); -- '😀'

การใช้ USING charset

SELECT CHAR(0x0E01 USING utf8mb4);  -- รองรับ 4-byte
SELECT CHAR(0x0E01);                -- Default charset (อาจไม่รองรับ)