Я искал, но не могу найти ответ, который точно соответствует моим потребностям. У меня есть два набора данных и вам нужно сравнить кусочек первого (столбец описания 1) со списком (таблица 2) и вернуть VIP-коды для каждого интерфейса/заказа.Сравнение данных в mySQL
Единственный идентификатор, который является одним и тем же для любого из описаний, - это 9-значный идентификатор заказа, который заканчивается на '003'. Мне нужно сравнить эту 9-значную строку с другой таблицей, которая всегда будет начинаться с идентификатора заказа, но впоследствии может содержать другие символы или числа. Я знаю, что сравнение LIKE будет работать для второй таблицы, но я не могу понять, как удалить номера заказов из поля описания.
UPDATE: Таблица 1 представляет собой временную таблицу, сравнивающую вывод команды интерфейса маршрутизатора. Таблица 2 - это моя статическая база данных учетных записей, в которой есть десятки тысяч записей, которые я не хочу сравнивать с таблицей. Вот почему я не просто беру таблицу два и сравниваю номера заказов с таблицей 1. Я специально просит помощи таким образом, чтобы извлечь порядка 9 цифр ID из описания поля таблицы 1.
Таблица 1
Interface Description
Ge 1/0/1 blah_bla_123456003_blahlahlah
Ge 1/0/2 blah_blah_bla_234567003_blahahblh
Ge 1/0/3 b_bla_345678003_blhahblah
Ge 1/0/4 bh_blh_ba_456789003_lahlahbl
Таблица 2
Order ID VIP Code
123456003.0 Premier
234567003 Wholesale
345678003.6 Normal
456789003.23 Premier
Ожидаемые результаты
Order* VIP Code
123456003 Premier
234567003 Wholesale
345678003 Normal
456789003 Premier
*(stripped from Description)
Это действительно проблематичный схема базы данных. Если вам нужно присоединиться к этим таблицам, вы должны сделать для них что-то доступное для этого (возможно, для автоинкрементного первичного ключа). –
Насколько сложно просмотреть список строковых функций в документации MySQL и найти те, которые получают первые 9 символов столбца? http://dev.mysql.com/doc/refman/5.5/en/string-functions.html – Barmar
Мне нужно сравнить таблицу 1 с таблицей 2. Я уже знаю, как получить самые левые 9 символов из таблицы 2, однако таблица два на самом деле - десятки тысяч записей, и я бы предпочел не сбрасывать весь этот список с Таблицы 1, который составляет 50-100 записей. поэтому я прошу о том, чтобы вытащить нужную 9-значную строку из поля описания в таблице 1 вместо того, чтобы просто изгнать тысячи записей из таблицы 2 в таблицу 1 с похожим запросом. – James