Создайте пустое поле, возвращая NULL
SELECT parts1.PART_NBR, parts1.NIIN, parts1.ANOTHER_FIELD
FROM parts1
WHERE parts1.PART_NBR='$pn'
UNION ALL
SELECT parts2.REFERENCE_NUMBER, parts2.NIIN, NULL AS ANOTHER_FIELD
FROM parts2
WHERE parts2.REFERENCE_NUMBER='$pn'
РЕДАКТИРОВАТЬ: Из вашего комментария вы видите результаты как
Part Number: 21223 NIIN: 008194914 Name: CAPACITOR
Part Number: 21223 NIIN: 011241926 Name: HEAT SINK
Part Number: 21223 NIIN: 003901600 Name: KNIFE
Part Number: 21223 NIIN: 003901600 Name:
Part Number: 21223 NIIN: 008194914 Name:
Part Number: 21223 NIIN: 011241926 Name:
Первые результаты приходятиз таблицы parts1
второй из parts2
, пустые поля Name
- это то, куда вы возвращаете NULL
.
Из предоставленной вами информации я не понимаю, почему вы используетеUNION
чтобы получить результаты из этих двух таблиц, поскольку они, похоже, содержат одинаковую информацию, за исключением того, что в первой таблице также есть поле Name
.
Не лучше ли было бы JOIN
таблиц наНомер детали / номер ссылки для выбора имени?
РЕДАКТИРОВАТЬ: Как вы сказали в своем комментарии, ранее вы получали DISTINCT
набор результатов из-за использования UNION
.С полем NULL
строки больше не являются уникальными, и запрос возвращает все строки.
Я сказал в комментарии, что я не вижу, что текущий оператор UNION делает для вас, так как он выглядит так жеИнформация в обеих таблицах.В этом запросе есть что-то большее, чем то, что вы нам сказали?