'MySQL - query to get all rows that a specific character is non-English

I have a table that has nvarchar elements. This table has two kinds of elements:

  1. elements with only digit characters
  2. elements with digit characters and the 3rd character is non-English character

I want a query to get all rows that their 3rd character is non-English.

EDIT

use WHERE SUBSTRING(<table>.ColumnName, 3, 1) NOT BETWEEN '0' AND '9' worked for me either



Solution 1:[1]

You can use RLIKE operator, below is the query for matching the third character which is not a digit and not an English alphabet

SELECT * FROM 
mytable 
where SUBSTR(mycol,3,1) NOT RLIKE '^[A-Za-z0-9]$';

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Jeffy Mathew