如何使用select语句来查询此数据库?

时间:2015-04-01 15:58:05

标签: mysql

如果我想知道有多少名字为“吉姆”的人通过考试,我会如何选择一个陈述?

如果我想在2015年3月10日9:00之后获得每个测试的教练姓名和姓氏,客户姓氏和姓氏和日期怎么样?

以下是数据库的关系模式。

客户 clientNo ,姓名,姓氏,性别,地址,telNo,proLicenceNo)

讲师讲师ID ,姓名,姓氏,性别,地址,telNo,licenceNo, carNo

汽车 carNo ,regNo,型号)

课程 clientNo onDate atTime 讲师ID

测试 clientNo onDate atTime instructorID centreID ,状态,原因)

中心 centreID ,姓名,地址)

主键以粗体显示,外键以斜体显示。不允许外键为空。

谢谢! :)

3 个答案:

答案 0 :(得分:0)

如果不知道哪个字段/值构成了传递,则很难编写这样的查询。 如果我不得不猜测Lets假设Test.Status ='通过'

select c.clientNo, c.forename, c.surname, c.gender, c.address, c.telNo, c.proLicenceNo 
    from Client c
    inner join Test t on t.clientNo = c.clientNo
where c.forename = 'Jim' and t.Status = 'Passed';

http://www.mysqltutorial.org/mysql-select-statement-query-data.aspx

答案 1 :(得分:0)

尝试在客户端和测试表之间加入,如:

SELECT c.forename, COUNT(c.forname)
FROM Client c INNER JOIN Test t
ON c.clientNo = t.clientNo
WHERE c.forename = 'Jim'
AND   t.status = 'PASS'
GROUP BY c.forname

答案 2 :(得分:-1)

create table passed as
select a.clientno, a.forename, b.status from
client a inner join test b on a.clientno = b.clientno
where a.forename='Jim' and b.status='Pass';