Как найти вхождение части строки в строке php

Подскажите, как получить кусок строки из базы на основании полной строки. Есть данные VIN авто, допустим JZX906634931. В базе есть поле допустим "kuzov" и там кусок от VIN, в данном случае это JZX90. Вопрос, как получить запись в базе с JZX90 на основание VIN? Заранее спасибо!


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

Автор решения: Vadim Pedchenko

Можете попробовать так:

SELECT
    kuzov 
FROM
    table 
WHERE
    vin REGEXP '^[JZX906634931]+$'
→ Ссылка
Автор решения: Akina

Если известно, что полное значение поля kuzov есть точная подстрока известного значения VIN, то

SELECT table.*
FROM table
WHERE INSTR(@known_VIN, table.kuzov)

Если к тому же известно, что эта подстрока идёт с самого начала VIN, то

WHERE 1 = INSTR(@known_VIN, table.kuzov)

Если же известно, что поле и заданное значение просто должны иметь общую подстроку длины 4 или более, начиная с любого места - задача непростая, и в рамках встроенных функций не решается.

→ Ссылка