交换两个不同表的两列的值

时间:2013-12-27 13:35:43

标签: mysql database join

给大家!我是PHP和MYSQL的新手

我的问题: 我创建了一个搜索框`

<input type="hidden" name="submitted" value="true" />

<label>Search Category:
<select name="category">
<option value="registration">Registration no</option>
 </select>
</label>

<label>Search: <input type="text" name="criteria" /></label>
<input type="submit"/>`

我有一个数据库学生,有两个表 student_info 级别 student_info 表包含name(varchar),level(int)。 级别表包含levelidlevelName列。 levelid列保存记录编号(1,2,3 ..)和 levelName包含BBA,BCA,MBA记录等。 在表格 student_info 中,level列包含值1,2,3 ...

问题: 当用户输入他的注册号码时,数据将从 student_info 表中提取。

所以level显示整数值。我希望 student_info 表的level获取levelName列的值。

我做到了$query = "SELECT * FROM student_info WHERE $category = '$criteria';"; 获得搜索结果。搜索结果显示student_info表的级别列值,它是1或2或.....

我想要一个查询来交换student_info表的level列和levels表的levelName之间的值。

请说清楚。 感谢

1 个答案:

答案 0 :(得分:1)

为了从相关表中检索其他信息,您必须执行JOIN。

尝试:

SELECT s.name, l.levelName
FROM student_info s
INNER JOIN levels l ON s.level = l.levelid
WHERE <insert whatever conditional here>

您可以转到http://en.wikipedia.org/wiki/Join_(SQL)

了解有关加入的详情