sql语句面试题(查询按照申请日期倒序排列的前10个记录)

昨天看一位面试的同学发的sql问答面试题并附了一张图片 在这里我帮许多初学者熟悉一下sql函数

sql语句面试题(查询按照申请日期倒序排列的前10个记录)_第1张图片

第一个:
select * from g_cardapply where g_applydate='2009-2-20'
第二个:

加载驱动啊

数据库连接    我就省略了  推荐一个 我也是百度出来也认可的一个(http://blog.csdn.net/lukyers/article/details/45867661)

Connection conn=DBUtil.getConnection();

StringBuilder sb=new StringBuilder();

sb.append("select g_applyno,g_applydate,g_state from g_cardapply");

PreparedStatement ptmt=(PreparedStatement) conn.prepareStatement(sb.toString());

ResultSet rs=ptmt.executeQuery();

第三个:
select g_idcard,count(g_idcard) as records from g_cardapplydetail
group by g_idcard having count(g_idcard)>=2
第四个:
select g_state,
sum(case when g_state='0' then 1 else 0 end) as 等待审核,
sum(case when g_state='1' then 1 else 0 end) as 审核通过 ,
sum(case when g_state='2' then 1 else 0 end) as 审核未通过 
from g_cardapply
group by g_state

第五个:
with temp as 
( select row_number() over(order by g_applyno desc) as rownum,g_applyno ,g_applydate,g_state from g_cardapply)
select * from temp where rownum<=10

大家可以度娘一下

row_number() 函数的用法


 


你可能感兴趣的:(sql语句面试题(查询按照申请日期倒序排列的前10个记录))