㈠ 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类型数据的年部分的函数,只要表中的数据存在年份和某学生生日的年份相同就可以。
㈡ 写出同年同月出生的学生人数的SQL语句
SQL代码如下:
SELECTCOUNT(*)
FROMStudents1,Students2
WHEREs1.Sno<s2.Sno
ANDYEAR(s1.BirthDate)=YEAR(s2.BirthDate)
ANDMONTH(s1.BirthDate)=MONTH(s2.BirthDate)
使用了自连接,“s1.Sno < s2.Sno”用于消除重复计算的人数。
㈢ SQL 只有出生日期 如何统计出相同年龄人数
例:表 tab1 ,出生日期字段为 rq,sql语句如下
selecta.age,count(*)from
(selectyear(getdate())-year(rq)as"age"fromtab1)a
groupbya.age;
关键语句:select year(getdate()) - year(rq) as "age" from tab1
year函数获取系统日期与出生日期的年份,将年份相减即年龄,当然也可以根据需求,取出月份,进行运算,获得更精确的周岁。
㈣ 用SQL语句如何查询年级班级以及入学年份 入学年份和年级在一张表,班级是另外一张表
应该是入学年份和年级在一张表,而班级,人员,还有年级也在一张表吧?
这样两张表才能通过年级相连接起来。而且,第一张表的主键应该就是年级吧?
你的两张表是以下这样吧?
年级年份表:(年级,入学年份) 主键是年级
班级学生表:(学生,班级,年级)学生是主键
SELECT a.学生, a.班级, b.年级, b.入学年份
from 班级学生表 a inner join 年级年份表 b
on a.年级 = b.年级
㈤ SQL 只有出生日期 如何统计出相同年龄人数 给我具体语句
假如统计1990-5-5相同年龄的人,主键为ID,生日的字段为Birthday SQL语句: SELECT COUNT(ID) FROM 表名 WHERE Birthday BETWEEN '1990-1-1 00:00:00' AND '1990-12-31:23:59:59'
麻烦采纳,谢谢!
㈥ 在SQL中查询年纪一样大(出生年份一样)的两个不同学生的姓名,以及他们的年龄
--好歹给张表的截图啊
--创建student表
create table student
( s_id number
,s_name varchar2(20)
,s_birthday date
)
--导入三组数据
insert into student values('001','liuzhao',to_date('1992-04-02 01:01:01','yyyy-mm-dd hh:mi:ss'));
insert into student values('002','lisi',to_date('1992-04-02 01:01:01','yyyy-mm-dd hh:mi:ss'));
insert into student values('003','wangwu',to_date('1990-02-10 01:01:01','yyyy-mm-dd hh:mi:ss'))
--查询出生年份相同的学生姓名和年龄
select s_name ,to_number(to_char(sysdate,'yyyy'))-to_number(to_char(s_birthday,'yyyy')) age
from student
where to_char(s_birthday,'yyyy') in
(select to_char(s_birthday,'yyyy')
from student
group by to_char(s_birthday,'yyyy')
having count(1)>1)
㈦ sql 学生表中如何查询与某同学同年的人
也就是说这个表中有学生的信息,包含生日吧?
SELECT * FROM 学生表 T1
WHERE EXISTS (SELECT 1
FROM 学生表 T2
WHERE YEAR(T1.生日) = YEAR(T2.生日)
AND 学生编号 = '某同学学生编号')
YEAR是取datetime类型数据的年部分的函数,只要表中的数据存在年份和某学生生日的年份相同就可以了。
㈧ 统计<学生信息表>,统计入学时间在1980年至1982年的学生人数,请写出SQL语句
select count(*) from table where date >= 1980 and date =< 1982
其中,table为学生信息表的表名,date为学生信息表中的入学时间字段。
㈨ 怎样用SQL语句表示:查询每个班级的学生人数
查询每个班级的学生人数的sql语句是:
select class_name,count(1) from table_name group by class;
其中class_name,count(1)为查出的班级名和对应的人数,table_name为学生表名称,group by是将class分组。
注意点:在select指定的字段要么就要包含在Group By语句的后面,作为分组的依据;要么就要被包含在聚合函数中。