當前位置:首頁 » 編程語言 » sql至少有四門成績大於80
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql至少有四門成績大於80

發布時間: 2022-10-29 13:31:02

『壹』 用一條sql語句 查詢出每門課都大於80分的學生姓名

select name form 表名 a where a.kecheng='語文' and a.fenshu>80 and exists (select * from 表名 b where b.name=a.name and b.kecheng='數學' and b.fenshu>80 )試一下

『貳』 怎麼用SQL語句查詢每門成績都大於80的學生姓名

select name from stu group by name having min(fs)>=80。

『叄』 用一條sql語句查詢出每門課都大於80分的學生姓名

請給出具體的表格式和列名稱。

沒有具體表,不同人設計的表結構不同,查詢語句也不同。
例:
表名稱為grade,結構如下
id 姓名 數學 語文
1 張三 30 20
2 李四 80 90
3 王五 90 70
查詢語句為
select * from grade where 數學>80 and 語文>80

『肆』 如何在SQL server中查詢成績大於80的學生記錄集

HAVING語句通常與GROUP BY語句聯合使用,用來過濾由GROUP BY語句返回的記錄集。

HAVING語句的存在彌補了WHERE關鍵字不能與聚合函數聯合使用的不足。

語法:

SELECT column1, column2, ... column_n, aggregate_function (expression)
FROM tables
WHERE predicates
GROUP BY column1, column2, ... column_n
HAVING condition1 ... condition_n;

同樣使用本文中的學生表格,如果想查詢平均分高於80分的學生記錄可以這樣寫:

SELECT id, COUNT(course) as numcourse, AVG(score) as avgscore

FROM student

GROUP BY id

HAVING AVG(score)>=80;

在這里,如果用WHERE代替HAVING就會出錯。

數據操縱

數據操縱語言是完成數據操作的命令,一般分為兩種類型的數據操縱。

1、數據檢索(常稱為查詢):尋找所需的具體數據。

2、數據修改:插入、刪除和更新數據。

數據操縱語言一般由 INSERT(插入)、 DELETE(刪除)、 UPDATE(更新)、 SELECT(檢索,又稱查詢)等組成。由於 SELECT經常使用,所以一般將它稱為查詢(檢索)語言並單獨出現。

『伍』 1、 用一條SQL語句 查詢出每門課都大於80分的學生姓名

selcet name,count(*)
from A
where fenshu>=80
group by name
Having count(*)=3
count是統計記錄個數
group by是將此表的姓名一欄分組。
having就是集合函數了。

『陸』 用一條sql語句查詢出「每門」課程都大於80分的學生姓名

首先需要進行分析:

要查詢出每門課程都大於80分的學生姓名,因為一個學生有多門課程,所以會出現下面三種情況。

第一可能所有課程都大於80分。

第二可能有些課程大於80分,另外一些課程少於80分。

第三也可能所有課程都小於80分。

那麼我們要查找出所有大於80分的課程的學生姓名,我們可以反向思考,找出課程小於80分(可以找出有一些課程小於80分,所有課程小於80分的學生)的學生姓名再排除這些學生剩餘的就是所有課程都大於80分的學生姓名了。

分析完成後,進入數據圖形化管理界面創建表並插入數據

--創建表aa

create table aa(

name varchar(10),

kecheng varchar(10),

fengshu int

)

--插入數據到表aa中

insert into aa values('張三','語文',81)

insert into aa values('張三','數學',75)

insert into aa values('李四','語文',76)

insert into aa values('李四','數學',90)

insert into aa values('王五','語文',81)

insert into aa values('王五','數學',100)

insert into aa values('王五','英語',90)

用一條SQL語句查詢出每門課都大於80分的學生姓名

select distinct name from aa where name not in (select distinct name from aa where fengshu<=80)

結果如下圖:

(6)sql至少有四門成績大於80擴展閱讀:

除了用distinct還可以用not in 或者 not exists 實現

//not in

SELECT DISTINCT A.name FROM Student A WHERE A.name not in(SELECT Distinct S.name FROM Student S WHERE S.score <80);

//not exists

SELECT DISTINCT A.name From Student A where not exists (SELECT 1 From Student S Where S.score <80 AND S.name =A.name);

結果與前面正文一樣。

『柒』 怎麼用SQL語句查詢每門成績都大於80的學生姓名

select
name
from
stu
group
by
name
having
min(fs)>=80。
還有這些簡單語句。
簡單基本的sql語句
更新:update
table1
set
field1=value1
where
范圍
查找:select
*
from
table1
where
field1
like
』%value1%』
(所有包含『value1』這個模式的字元串)
排序:select
*
from
table1
order
by
field1,field2
[desc]
求和:select
sum(field1)
as
sumvalue
from
table1
平均:select
avg(field1)
as
avgvalue
from
table1
最大:select
max(field1)
as
maxvalue
from
table1
最小:select
min(field1)
as
minvalue
from
table1[separator]

『捌』 用T-sql語句寫出 查詢出平均分大於80分,且至少兩門課大於80的學生。 表如下:

稍微簡化一下:
SELECT NAME,
SUM(CASE WHEN MAJOR = '數學' THEN SCORE ELSE 0 END)數學 ,
SUM(CASE WHEN MAJOR = '外語' THEN SCORE ELSE 0 END)外語 ,
SUM(CASE WHEN MAJOR = '語文' THEN SCORE ELSE 0 END)語文 ,
AVG(SCORE)
FROM STUDENT GROUP BY NAME
having SUM(CASE WHEN SCORE > 80 THEN 1 ELSE 0 END) >= 2
AND AVG(SCORE) >80

『玖』 sql語句在學生表中查詢4號同學成績高於80分的課程號

原來多表聯合查詢還可以用列與列之間進行比較。聯合百查詢後,在where用選度課表的成績列 大於 選課表平均成績。
student為學生問表,答class為課程表,selectclass為選課關系表。
select * from selectclass as t1,
(select avg(sc.classreult)as pingjun,sc.classID from selectclass as sc group by classid )as t2
where t1.classID=t2.classID and t1.classReult>t2.pingjun