MYSQL+PHP 数据库中两张表A,B的关联问题

MYSQL+PHP数据库用有两张表A,BA表字段:学生ID学生姓名论文题目导师IDB表字段:导师ID导师姓名两张表中导师ID字段完全相同,想以此为关联现需要根据学生ID、... MYSQL+PHP
数据库用有两张表A,B
A表字段:学生ID 学生姓名 论文题目 导师ID
B表字段:导师ID 导师姓名
两张表中导师ID字段完全相同,想以此为关联

现需要根据学生ID、学生姓名、论文题目、导师姓名进行多条件同时查询,然后输出结果:学生ID 学生姓名 导师姓名 论文题目
以导师查询的时候检索的是导师ID还是导师姓名呢?怎样使两张表的导师ID进行关联?

本来是一张表的内容,没有导师ID这个字段,后来老师说放在一张表里的话,导师姓名
重复太多,所以再建一张表放导师ID和姓名,本人初学者,本来一张表的时候已经实现检索功能了,现在要求这样改,请指路!
目前一张表的时候多条件检索是这样

if(isset($_POST["id"]) && ($_POST["id"] != "")){
$id = mysql_escape_string($_POST["id"]);
$id = str_replace("%", "\%", $id);
if ($condition == ""){
$condition = "WHERE sid LIKE \"%".$id."%\"";
} else{
$condition .= "AND sid LIKE \"%".$id."%\"";
}
}

$sql = "SELECT * FROM data ".$condition."

只写了学生ID:sid 的$condition,还有3个。

data表:sid sname title tid s:学生 t:导师
teacher表:tid tname

检索四个条件:sid sname title tid 要求可以单个或四个条件同时匹配
输出结果:sid sname title tname

够详细了吗? 我没具体学过数据库和PHP,只看了两天书,根据要求找了代码改一改,所以请说的详细一点。
展开
 我来答
冰雪残冬
2010-10-18 · TA获得超过203个赞
知道小有建树答主
回答量:118
采纳率:0%
帮助的人:0
展开全部
select `a`.*, `b`.`导师姓名` WHERE `a`.`导师ID` = `b`.`导师ID`
A表中导师ID为索引
B表中导师ID为主键

这样都不明白。。无奈了
你把你数据库里字段名写出来,别用文字代替了
另外还有要检索什么东西
直接写好sql给你就是了

if ($condition == ""){
$condition = "WHERE sid LIKE \"%".$id."%\"";
} else{
$condition .= "AND sid LIKE \"%".$id."%\"";
}
改成
condition = " AND sid LIKE \"%".$id."%\"";

然后SQL该下
$sql = 'select `data`.*, `teacher`.`tname` FROM `data`, `teacher` WHERE `data`.`tid` = `teacher`.`tid`' . $condition
就这样
jinke_love
2010-10-18
知道答主
回答量:8
采纳率:0%
帮助的人:9132
展开全部
select * from a join b on a.导师ID=b.导师ID where b.导师姓名 like '%%' or a.论文题目 like '%%'
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式