sqlserver查询语句
course表如下显示:cnocname
01数学
02语文
03 化学
score表如下显示:
sno sname cnoscore
0301 张三 01 99
0301 张三 03 95
0302 李四 01 85
0302 李四 02 76
0302 李四 03 96
查询结果要如下显示
sno sname cname score
0301 张三 数学 99
0301 张三 化学 95
0302 李四 化学 96
sql语句如何写? LZ 你这是要查什么呢?给表,什么都没说,睡知道你要查询什么东西。 需要查询什么??? SELECT `sno` , `sname` , `cname` , `score`
FROM `score` , `course`
WHERE `score`.`cno` = `course`.`cno`
AND `score` >90
mysql测试通过 刚试了试 4#的sql 还真可以耶.但是不知道怎么从两张表查询,不用关联关键字也行。。。
#select sc.sno,sc.sname,co.cname,sc.score from score as sc inner join course as co where sc.score>90 and sc.cno=co.cno;
CREATE TABLE course
(cno INT NOT NULL,
cname VARCHAR(255))
CREATE TABLE score
(sno INT NOT NULL,
sname VARCHAR(255),
cno INT,
score INT)
INSERT INTO course (cno,cname)
VALUES
(01,'数学'),
(02,'语文'),
(03,'化学')
INSERT INTO score(sno,sname,cno,score)
VALUES
(301,'张三',1,99),
(301,'张三',2,95),
(302,'李四',1,85),
(302,'李四',2,76),
(302,'李四',3,96) 回复 5# freedom_me
楼上的写的很规范呀!:) 哈哈,这个就是所谓的"笛卡尔乘积"中符合条件的结果?刚试的时候发现若不加科目的判断会有9条记录,分别是科目表所有记录*分数表大于90的记录。。 回复 3# 楠族开心果
版主惭愧啊,咱俩都看错了。他已经给了查询结果。 4l正解 select sno, sname, cname, score from course,score where course.cno=score.cno and score>90;
顶4楼
页:
[1]