A. 用sql語句,查詢每個班級成績排名前三名的學生姓名
1、首先在打開的SQLServer中,假設有兩條數據中,包含有【張】,但是這個張一前一後,如下圖所示。
B. 用一條SQL語句查詢出所有員工姓名的字母前三位
sql中按姓名拼音排序
select
isnull(b.py,upper(left(a.username,1)))
as
py
,a.username
from
(
select
'a3'
as
username
union
select
username
from
usertable
--修改這里的姓名列~
)
a
left
outer
join
(
select
'a'
as
py,n'驁'
as
word,
n'啊'
as
sword
union
select
'b',n'簿',n'驁'
union
select
'c',n'錯',n'簿'
union
select
'd',n'鵽',n'錯'
union
select
'e',n'樲',n'鵽'
union
select
'f',n'鰒',n'樲'
union
select
'g',n'腂',n'鰒'
union
select
'h',n'夻',n'腂'
union
select
'j',n'攈',n'夻'
union
select
'k',n'穒',n'攈'
union
select
'l',n'鱳',n'穒'
union
select
'm',n'旀',n'鱳'
union
select
'n',n'桛',n'旀'
union
select
'o',n'漚',n'桛'
union
select
'p',n'曝',n'漚'
union
select
'q',n'囕',n'曝'
union
select
'r',n'鶸',n'囕'
union
select
's',n'蜶',n'鶸'
union
select
't',n'籜',n'蜶'
union
select
'w',n'鶩',n'籜'
union
select
'x',n'鑂',n'鶩'
union
select
'y',n'韻',n'鑂'
union
select
'z',n'咗',n'韻'
)
b
on
left(username,1)
between
b.sword
and
b.word
where
username<>'a3'
and
py='a'
--這里的and
py='a'是查詢以a拼音開頭的姓名,你可以
改成其他的,或者直接去掉就是查詢所有的~
order
by
py
C. 求一SQL語句:如何查詢最大的前3個值
查詢最大的前3個值的方法及編寫方式
D. 急急急!!!怎麼用SQL語句查詢student表中年齡最小的前三名學生信息
select top 3 * from student order by age ASC
top 3 是前3個學生的意思, order by age ASC 的意思是根據年齡升序排列, 也就是說最前面的就是年齡最小的。 (當然你沒有考慮到的是3個最小的年齡一樣的話, 是不是還要加個條件, 比如學號, 性別)
E. Mysql資料庫中,要查詢前三條記錄,sql語句怎麼寫
SELECT * FROM 表 LIMIT 0, 3
LIMIT 接受一個或兩個數字參數。
參數必須是一個整數常量。
如果給定兩個參數,第一個參數指定第一個返回記錄行的偏移量,
第二個參數指定返回記錄行的最大數目。
初始記錄行的偏移量是 0(而不是 1)
F. SQL的自連接,比如要查詢每科的前三名,查詢語句是
SELECT*FROMscorea
WHERE搏返激基襪(SELECT世困count(*)FROMscorebWHEREb.subjects=a.subjects)<3
G. SQL server 課上,老師讓我們「查詢入學成績排在前3位的學生姓名,並列的都顯示。」不知道用什麼語句,
select 姓名欄位 from 表名 where 分數欄位 in
(select distinct top 3 分數欄位 from 表名 order by 分數欄位 desc );
在子查詢里,先選出最高的三個分數(去重),然後所有分數在這三個分數里的記錄,選擇該記錄的姓名欄位
H. 用sql語句,查詢每個班級成績排名前三名的學生姓名
1、首先在打開的SQLServer中,假設有兩條數據中,包含有【張】,但是這個張一前一後,如下圖所示。
I. sql語句 每科成績的前三名
可以用row_number函數來解決。
1、創建測試表,插入數據:
create table sc
(id int,
name varchar(20),
class varchar(20),
score int);
insert into sc values (1,'badkano','一年一班',100)
insert into sc values (2,'網路知道團長','一年一班',99)
insert into sc values (3,'小短','一年一班',95)
insert into sc values (4,'小小動','一年一班',97)
insert into sc values (5,'小智','一年一班',80)
insert into sc values (6,'呂布','一年二班',67)
insert into sc values (7,'趙雲','一年二班',90)
insert into sc values (8,'典韋','一年二班',89)
insert into sc values (9,'關羽','一年二班',70)
insert into sc values (10,'馬超','一年二班',98)
2、查詢每個班級的前三名,可用語句:
select * from
(select row_number() over (partition by class order by score desc) 排名,* from sc) t
where 排名<=3 order by class asc,score desc
J. SQL語句如何查詢成績的前三名帶成績重復的
select * from table where 成績 in (select top 3 distinct 成績 from table order by 成績 desc) order by 成績 desc
下面這個效率要高點
select * from table where 成績 >= (select min(成績) from(select top 3 distinct 成績 from table)) order by 成績 desc