บทความนี้จะเรียนรู้และแสดงวิธีใช้ฟังก์ชัน CHARINDEX () ใน SQL Server เพื่อค้นหาตำแหน่งของสตริงย่อยภายในสตริงหลักขนาดใหญ่
อธิบาย
ฟังก์ชัน CHARINDEX ใน SQL Server จะใช้เพื่อค้นหาสตริงย่อยภายในสตริงขนาดใหญ่โดยเริ่มจากตำแหน่งที่ระบุ ฟังก์ชันส่งคืนผลลัพธ์ที่พบสตริงย่อยหรือคืนค่า 0 หากไม่พบ ตำแหน่งลูกโซ่เริ่มต้นที่ 1 อย่าเริ่มจาก 0 เหมือนในกรณีอื่นๆ
ไวยากรณ์
ในการเรียกใช้ฟังก์ชัน CHARINDEX ใน SQL Server เราใช้ไวยากรณ์ต่อไปนี้:
CHARINDEX( chuoi_con, chuoi_cha, [vi_tri_bat_dau])
พารามิเตอร์ :
- chuoi_con :สตริงย่อยที่คุณต้องการค้นหา ความยาวจำกัดที่ 8000 อักขระ
- chuoi_cha: สตริงที่จะค้นหา อาจเป็นสตริงข้อความ นิพจน์ หรือคอลัมน์
- vi_tri_bat_dau: ไม่จำเป็นต้องใช้. ตำแหน่งในห่วงโซ่ที่จะเริ่มต้นการค้นหา ตำแหน่งแรกคือ 1.
หมายเหตุ :
- อันดับแรกในซีรีส์คือ 1.
- หากไม่พบสตริงย่อยในสตริง CHARINDEX จะคืนค่า 0
- ฟังก์ชัน CHAR สามารถใช้ได้ในเวอร์ชันที่ใหม่กว่าของ SQL Server เท่านั้น:SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005
ตัวอย่าง
ลองดูและสำรวจตัวอย่างฟังก์ชัน CHARINDEX ใน SQL Server
SELECT CHARINDEX('q', 'TipsMake.com');
Result: 1 (tìm kiếm không phân biết chữ hoa chữ thường)
SELECT CHARINDEX('n', 'TipsMake.com', 2);
Result: 4
SELECT CHARINDEX('n', 'TipsMake.com', 6);
Result: 10
SELECT CHARINDEX('AN', 'TipsMake.com');
Result: 3 (tìm kiếm không phân biết chữ hoa chữ thường)
SELECT CHARINDEX('an', 'TipsMake.com', 7);
Result: 9 (search is not case-sensitive so it will match on 'On')
SELECT CHARINDEX('z', 'TipsMake.com');
Result: 0