А как написать скрипт, который будет искать максимальное вхождение кодов в номер?(sql)

Здраствуйте!

Есть таблица с такими столбцами и примерно с такими значениями:

id code name sign money
1 8916 МТС Сеть Мтс 1.29
2 8999996 Мегафон Сеть Мегафон 1.3
6 899999 Скартел сеть Скартел 1.5
15 899998 Скартел сеть Скартел 1.4

как сделать так, чтобы я вводил номер, например: 79169321542 и на вывод приходило это:

id code name sign money
253 79169 МТС Сеть Мтс 1.7

Ответы (1 шт):

Автор решения: Alex R.
select
  mt.*
from my_table mt
where '79169321542' like mt.code || '%'

Возможно потребуется отсечение +7/8 как от входного номера, так и от кода из таблицы. Также при таком способе, если в таблице код может быть частью кодf из других записей, то выведется несколько строк.

→ Ссылка