在MySQL中将两个表连接在一起时获取太多行

时间:2016-11-14 20:35:43

标签: php mysql

我在MySQL中有两个表:“学生”和“部门”。他们有以下模式:

STUDENT->STU_ID(PRIMARY_KEY),STU_NAME,DEP_ID(FORIEGN_KEY);

DEPARTMENT->DEP_ID(P_K),DEP_NAME

我想在like上使用stu_name运算符,而dep_name应该打印而不是dep_id

我在PHP中使用以下查询:

$sql_sel = mysqli_query(
     $conn,
     "SElECT * FROM STUDENT 
        WHERE STU_NAME like '%mykey%' 
        JOINS department ON student.dep_id=department.dep_id
     ");

但是,如果有一名学生与mykey匹配,则会打印每个部门的学生姓名。所以,如果一个学生与n匹配。部门如此n行。

1 个答案:

答案 0 :(得分:0)

首先尝试

INNER JOIN

第二

尝试添加

GROUP BY