我有4个表参与,Lecturer_info,ScientificEvaluator,commision他们每个人都有一个外键给讲师_info 我想搜索讲师并显示所有表格中的所有值
当我将'和'更改为'或'时,此选择不会返回任何内容。 它返回随机值:
SELECT Lecturer_Name, com_name ,Sicn_name ,Names_Of_Participations , pdf1 , pdf2,pdf3
FROM Participation,Lecturer_info,ScientificEvaluator,commision
where lecturer_fk = Lecturer_id and com_id = part_id and Sicn_id = part_id
and Lecturer_Name = '% %'
答案 0 :(得分:1)
通过正确的连接和一些格式化,您的查询可能如下所示。
SELECT l.Lecturer_Name
, c.com_name
, se.Sicn_name
, p.Names_Of_Participations
, pdf1
, pdf2
, pdf3
FROM Participation p
join Lecturer_info l on p.lecturer_fk = l.Lecturer_id
join ScientificEvaluator se on se.Sicn_id = p.part_id
join commision c on c.com_id = p.part_id
where l.Lecturer_Name = '% %'
但你真的有一个名字为%%的讲师吗?也许你正试图找到名字中有空格的讲师姓名?这将是LIKE而不是=
如果这个查询没有开箱即用,那是因为我编码是盲目的。
答案 1 :(得分:0)
AND和OR运算符用于根据多个条件过滤记录:
如果由AND分隔的所有条件都为TRUE,则AND运算符显示记录。 如果由OR分隔的任何条件为TRUE,则OR运算符显示记录。