mysql - 无法使用 mysql 从不同表中选择成绩

标签 mysql database

我有一个问题想问你,是关于数据库(mysql)的。 我正在做一个学生管理系统,我一直坚持一些查询,我想根据表考试中的分数从表成绩中选择grade_point和grade_name,所以我的期望是如果表考试中的分数在grade_mark_from和grade_mark_up之间它将返回grade_name和grade_point,你可以看到我下面的表格。

表等级:

--------------------------------------------------------------------------------
|grade_id|grade_name|grade_point|grade_mark_from|grade_mark_up|comment         |
--------------------------------------------------------------------------------
|1       |A+        |5          |80             |100          |Very good result|
|2       |A         |4          |70             |79           |Good result     |
|3       |B+        |3.5        |60             |69           |Good result     |
|4       |B         |3          |50             |59           |Good            |
|5       |C         |2          |40             |49           |Good            |
|1       |D         |2.5        |30             |39           |Good            |
|1       |E         |1.5        |1              |33           |No good         |
--------------------------------------------------------------------------------

表考试:

----------------------------------------------------
|exam_id|mark|comment|exam_id|subject_id|student_id|
----------------------------------------------------
|1      |50  | no    |1      |1         |1         |
|2      |30  | no    |1      |1         |2         |
|3      |70  | no    |1      |1         |3         |
|4      |90  | no    |1      |2         |1         |
|5      |60  | no    |1      |2         |2         |
|6      |25  | no    |1      |2         |3         |
----------------------------------------------------

所以我不知道该怎么做,请帮助我。

最佳答案

举个例子,假设您想要考试 3 的值。

您可以使用BETWEEN:

SELECT grade_point, grade_name FROM grade, exam 
WHERE mark BETWEEN grade_mark_from AND grade_mark_up AND exam_id = 3;

或者您可以使用单一条件:

SELECT grade_point, grade_name FROM grade, exam 
WHERE mark > grade_mark_from AND mark < grade_mark_up AND exam_id = 3

关于mysql - 无法使用 mysql 从不同表中选择成绩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28801181/

相关文章:

c# - 将 ADO.Net 实体数据模型向导连接到 MySQL 数据库

php - 如何在 mysql php 中使用 IN OPERATOR 删除所有行

ios - 如何修复 "flutter: DatabaseException(open_failed...)"?

mysql - Cakephp 如何根据另一个表创建虚拟字段

sql-server - 我应该在存储过程中的临时表上创建主键吗?

sql - 优化 MySQL 查询(更新 + 子查询)

javascript - 我可以缩短这个脚本吗? (更新数据库表并刷新)

PHP SQL - 从一张表中进行多项选择

SQL在一个查询中插入2个表

mysql - SQL OR 在 WHEN 内(在 CASE 中)