Все еще новичок в MySQL, и я много раз просматривал предыдущие вопросы, пытаясь найти подходящее решение.
У меня есть две таблицы CaseReportsTempImport2011Q3
и FDADrugsDB
, я хочу сделать левое соединение, чтобы соответствовать CaseReportsTempImport2011Q3.drugname
до FDADrugsDB.ReferenceDrugName
и FDADrugsDB.DrugName
То, что я предполагал, было что-то вроде:
SELECT DISTINCT(CaseReportsTempImport2011Q3.DRUGNAME)
, FDADrugsDB_Product.drugname
, FDADrugsDB_Product.ReferenceDrug
, FDADrugsDB_Product.activeingred
FROM CaseReportsTempImport2011Q3
LEFT JOIN FDADrugsDB_Product ON CaseReportsTempImport2011Q3.DRUGNAME LIKE TRIM(FDADrugsDB_Product.ReferenceDrug)
LEFT JOIN FDADrugsDB_Product ON CaseReportsTempImport2011Q3.DRUGNAME LIKE TRIM(FDADrugsDB_Product.DrugName)
ORDER BY LENGTH(CaseReportsTempImport2011Q3.DRUGNAME) ASC
Но это не работает, я получаю «Не уникальная таблица / псевдоним:« FDADrugsDB_Product '»- Любая помощь?
Спасибо
РЕДАКТИРОВАТЬ ДЛЯ ЛУЧШЕГО ЗАПРОСА РЕШЕНИЯ / REPHRASE Per borealids "Однако я не уверен, что это то, что вы хотите сделать - присоединиться кТаблица дважды приведет к мультипликативному количеству результатов. Я думаю, что вы, возможно, хотели бы одного соединения с ON ... ИЛИ ..., делая условие соединения "или" из двух причин для связи. "
Я хотел бы знать, как это сделать.
РЕШЕНИЕ ON CaseReportsTempImport2011Q3.DRUGNAME LIKE TRIM (FDADrugsDB_Product.ReferenceDrug) ИЛИ CaseReportsTempImport2011Q3.DRUGNAME LIKE TRIMD*ПоблагодаритьТом и Бореалид.