У меня есть запрос на выборку из двух различных таблиц (продукта & Поставщика Кода - внутренняя соединена), где указанный столбец на% LIKE% мой поиск строки ,Объединить столбцы из двух таблиц AS один результата, а затем использовать в запросе на выборке
SELECT product.*, supplier_code.PART_NO AS PART_NO
FROM product INNER JOIN supplier_code ON
product.PRODUCT_ID=supplier_code.PRODUCT_ID
AND supplier_code.MAINSUPP = 1
WHERE $column LIKE ?
LIMIT 0, 25
Проблема у меня есть один из столбцов (штрих-) имеет альтернативы, которые хранятся в таблице третьего - AltBCode. Поэтому, если $ column = Barcode, это совпадение может быть в Product.Barcode. Или оно может быть в AltBCode.Alt_Barcode (оба они оба уникальны).
Я могу только предпочесть Мне нужно объединить эти два столбца сначала как один Столбец AllBarcodes скажите, а затем используйте это в моем выборе запроса?
Компоновка из таблиц, хранящих два штрих-кода является:
Product Table
PRODUCT_ID | Barcode | Description | Price | Stock | Etc
1 | 12345 | Apple | 1.00 | 4 |
2 | 45678 | Orange | 0.50 | 2 |
3 | 91583 | Banana | 2.00 | 0 |
AltBCode Table
Id | PRODUCT_ID | Alt_Barcode
1 | 2 | 4321
Так что, если я ищу «4321» Я хочу вернуться Row 2 из продукта.
UPDATE
Спасибо за ответы, ребята. Я не уверен, что был достаточно ясен.
После Product.Barcode и AltBCODE.Alt_code соединены они являются $ Колонки я хочу, чтобы иметь возможность использовать в своем ИНЕКЕ. Итак:
SELECT product.*, supplier_code.PART_NO AS PART_NO
(Magically Select product.barcode and altbcode.altcode AS ALLBARCODES)
FROM product INNER JOIN supplier_code ON
product.PRODUCT_ID=supplier_code.PRODUCT_ID
AND supplier_code.MAINSUPP = 1
WHERE ALLBARCODES LIKE %4321%
LIMIT 0, 25
Так упростить, если:
Table Product
PROD_ID | Barcode | Desc
2 | 1234 | Apples
Table Alt Barcodes'
ID | PROD_ID | ALT_CODE
1 | 2 | 2345'
2 | 2 | 3456
3 | 2 | 4567
WHERE PROD_ID = 2 даст мне строки:
PROD_ID -> 2, ALLBARCODE ->1234, DESC- > APPLES
PROD_ID -> 2, ALLBARCODE ->2345, DESC- > APPLES
PROD_ID -> 2, ALLBARCODE ->3456, DESC- > APPLES
PROD_ID -> 2, ALLBARCODE ->4567, DESC- > APPLES
НО ГДЕ ALLBARCODE LIKE% 2345% будет только матч
Какой штрих-код вы хотите вернуть? исходный штрих-код или альтернативный штрих-код? – Sean
Штрих-код Alternatre вместе с соответствующей строкой Product_ID – Amused
Здесь нет LIKE. Это просто простое соединение. – Strawberry