当前位置:首页 » 编程语言 » sql同姓查询
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql同姓查询

发布时间: 2023-07-05 21:18:35

1. sql语句中怎样查询学生表中所有有着相同的名字的人的信息

方法一:select *from 学生表

where name in 姓名

方法二:

selecct 姓名

from 学生表

group by 姓名

having count(*)>1

如果 having 子句不加,则是统计各名字的数量,加上则只显示 数量大于 1 的人名。

(1)sql同姓查询扩展阅读:

sql 学生表中如何查询与某同学同年的人

SELECT*FROM学生表T1

WHERE EXISTS(SELECT1

FROM学生表T2

WHEREYEAR(T1.生日) = YEAR(T2.生日)

AND 学生编号 = '某同学学生编号')

YEAR是取datetime类型数据的年部分的函数,只要表中的数据存在年份和某学生生日的年份相同就可以。

2. SQL怎么查询一张表中同名同姓的姓名及各自人数

select 名,姓,count(*)数量 from 表 group by 名,姓

3. 用sql 语言怎样 查询同名同姓学生名单,并统计同名人数

select
姓名,count(学号)
as
num
from
学生表
group
by
姓名
having
count(学号)>1
--保证查找到的都是存在2个以上(包括2)的同名同姓的姓名及人数。

4. sql语句中在学生信息表中查询同姓的学生姓名

1.创建一个测试表,如下图

createtabletest_name(idint,namevarchar2(20));

注意事项:

SQLServer的特点如下

1.具有真实的客户端和服务器架构架构。

2.图形用户界面使系统管理和数据库管理更加直观。

3.丰富的编程接口专用工具,为用户进行程序设计提供了更多的选择。

4.它是完全集成的,利用了NT的许多功能,比如发送消息和接收消息。

5. 挑战SQL经典题(一)

建表语句:

表说明:
student(sid,sname,sage,ssex) 学生表
course(cid,cname,tid) 课程表
sc(sid,cid,score) 成绩表
teacher(tid,tname) 教师表

问题:
1、查询“1”课程比“2”课程成绩高的所有学生的学号;(3号-张三)

2、查询平均成绩大于60分的同学的学号和平均成绩;(1、2、3、4号)

3、查询所有同学的学号、姓名、选课数、总成绩;

4、查询姓“李”的老师的个数;(0个)

5、查询没学过“叶平”老师课的同学的学号、姓名; (4号-李四)

6、查询学过“1”并且也学过编号“2”课程的同学的学号、姓名;
(1号-刘一 2号-钱二 3号-张三 6号-赵六 除了4号和5号)---考查EXISTS

7、查询学过“叶平”老师所教的所有课的同学的学号、姓名; (除了4号)

8、查询课程编号“2”的成绩比课程编号“1”课程低的所有同学的学号、姓名;
(3号-张三)

9、查询所有课程有成绩小于60分的同学的学号、姓名;
(1号、3号、5号、6号 除了2号和4号)

10、查询没有学全所有课的同学的学号、姓名; (4号、5号、6号)

11、查询至少有一门课与学号为“1”的同学所学相同的同学的学号和姓名; (All)

12、查询跟学号为“1”的同学学的所有课一样的其他同学学号和姓名; (2号和3号)

13、把“sc”表中“叶平”老师教的课的成绩都更改为此课程的平均成绩; (61.4)

14、删除学习“叶平”老师课的SC表记录;

15、向sc表中插入一条记录,要求符合以下条件:没有上过编号“3”课程的同学学号、2号课的平均成绩;(6号童鞋没有上过3号课程)

16、按平均成绩从高到低显示所有学生的“语文”、“数学”、“英语”三门的课程成绩,按如下形式显示: 学生ID,语文,数学,英语,有效课程数,有效平均分(待更正 语句有错)

17、查询各科成绩最高和最低的分:以如下形式显示:课程ID,最高分,最低分

18、按各科平均成绩从低到高和及格率的百分数从高到低顺序

19、查询如下课程平均成绩和及格率的百分数(用"1行"显示):
语文-1、数学-2、英语-3、物理-4

20、查询不同老师所教不同课程平均分从高到低显示

21、统计打印各科成绩,各分数段人数:课程ID,课程名称,[100-85],[85-70],[70-60],[ <60]

22、查询学生平均成绩及其名次

23、查询各科成绩前三名的记录:(不考虑成绩并列情况)---------SQL不识别TOP

24、查询每门课程被选修的学生数

25、查询出只选修了一门课程的全部学生的学号和姓名

26、查询男生、女生人数

27、查询姓“张”的学生名单

28、查询同名同姓学生名单,并统计同名人数

29、查询平均成绩大于85的所有学生的学号、姓名和平均成绩

30、查询“物理”课分数不及格的学生姓名和分数

31、查询所有学生的选课情况;

32、查询课程的成绩在80分以上的学生姓名、课程名称和分数;

33、查询选修“周磊”老师所授课程的学生中,成绩最高的学生姓名及其成绩(李四-93)

34、查询不同课程成绩相同的学生的学号、课程号、学生成绩

35、查询两门以上课程大于80分的同学的学号及其平均成绩

36、检索“4”课程分数小于60,按分数降序排列的同学学号

6. 用SQL查询同姓人名语句的

假设姓名字段为name:
slect * from 表名 where name like'姓%'
将语句中’姓‘,替换成你想要的姓,如:李、司马等,复姓也可以

7. SQL查询一张表中同名同姓、同性别的SQL语句怎么写

SELECT*
FROM表名W
WHEREEXISTS(SELECT姓名,性别FROM表名
WHERE姓名=W.姓名AND性别=W.性别
GROUPBY姓名,性别
HAVINGCOUNT(*)>1)
ORDERBY姓名,性别

8. sql 2000中如何找出所有同姓的人,名可以不同

假设你保存姓名的数据表为“abc”,则可以使用如下语句查询出所有姓氏有重复的人员信息:
select * from abc where substring(thexm,1,1) in (select substring(thexm,1,1) 姓氏 from abc group by substring(thexm,1,1) having count(substring(a0101,1,1))>1);
其中:select substring(thexm,1,1) 姓氏 from abc group by substring(thexm,1,1) having count(substring(a0101,1,1))>1部分是查询生成姓氏出现数量大于1次(即有重复)的列表;
然后在从列表中查询出姓氏在这些重复列表之中的人员信息;
substring函数中各参数的意义可以翻阅相关书籍或者网络,having子句等的用法不再详解。