У мене є запит, який використовує три таблиці пошуку, щоб отримати всю необхідну мені інформацію. Мені потрібно мати DISTINCT
значення для одного стовпця, однак мені також потрібні решта даних, пов'язаних з ним.
Мій SQL-код:
SELECT acss_lookup.ID AS acss_lookupID,
acss_lookup.product_lookupID AS acssproduct_lookupID,
acss_lookup.region_lookupID AS acssregion_lookupID,
acss_lookup.document_lookupID AS acssdocument_lookupID,
product.ID AS product_ID,
product.parent_productID AS productparent_product_ID,
product.label AS product_label,
product.displayheading AS product_displayheading,
product.displayorder AS product_displayorder,
product.display AS product_display,
product.ignorenewupdate AS product_ignorenewupdate,
product.directlink AS product_directlink,
product.directlinkURL AS product_directlinkURL,
product.shortdescription AS product_shortdescription,
product.logo AS product_logo,
product.thumbnail AS product_thumbnail,
product.content AS product_content,
product.pdf AS product_pdf,
product.language_lookupID AS product_language_lookupID,
document.ID AS document_ID,
document.shortdescription AS document_shortdescription,
document.language_lookupID AS document_language_lookupID,
document.document_note AS document_document_note,
document.displayheading AS document_displayheading
FROM acss_lookup
INNER JOIN product ON (acss_lookup.product_lookupID = product.ID)
INNER JOIN document ON (acss_lookup.document_lookupID = document.ID)
ORDER BY product_displayheading ASC;
Я хочу отримати всі продукти з цього запиту, але я хочу отримати їх лише один раз, оскільки я заповнююю спадне меню для пошукової програми. Я хочу, щоб користувач міг вибрати з продуктів, що знаходяться в цій таблиці (тому мені вони потрібні лише один раз).
Це занадто складно? Чи варто використовувати більш спрощений підхід?