我在MySQL中有两个表。在MySQL中的两个表中的复杂查询
第一个表格是EMPLOYEES
,它包含LASTNAME, NAME, MIDDLENAME, BIRHDATE
和其他关于员工的列。
第二个表格是PROJECTS
。它具有列STAFF
。 工作人员有像 lastname1 name1, middlename1; lastname2 name2, middlename2.....
行我需要从雇员谁是在工作人员的人。
查询
SELECT LASTNAME, NAME, MIDDENAME from EMPLOYEES where
CONCAT('%', LASTNAME, ' ', NAME, ' ',MIDDENAME, '%')
like (SELECT STAFF FROM PROJECTS)
不起作用,因为LIKE必须从第二查询
和查询一个子
SELECT LASTNAME, NAME, MIDDENAME from EMPLOYEES where
CONCAT('%', LASTNAME, ' ', NAME, ' ',MIDDENAME, '%')
IN (SELECT STAFF FROM PROJECTS)
不会太大,因为工作需要完善的配套
有什么想法?
请考虑格式化您的文章。 – Rahul
提供您的表格定义和一些样本数据集来测试 –
我会建议名称字符串(尽管它看起来像个好主意)对于实体相交来说是一个糟糕的主意 – Drew