表结构:
1、 表名:g_cardapply
字段(字段名/类型/长度):
g_applyno varchar 8;//申请单号(关键字)
g_applydate bigint 8;//申请日期
g_state varchar 2;//申请状态
2、 表名:g_cardapplydetail
字段(字段名/类型/长度):
g_applyno varchar 8;//申请单号(关键字)
g_name varchar 30;//申请人姓名
g_idcard varchar 18;//申请人身份证号
g_state varchar 2;//申请状态
其中,两个表的关联字段为申请单号。
题目:
1、 查询身份证号码为440401430103082的申请日期
2、 查询同一个身份证号码有两条以上记录的身份证号码及记录个数
3、 将身份证号码为440401430103082的记录在两个表中的申请状态均改为07
4、 删除g_cardapplydetail表中所有姓李的记录
答案:
(1)select a.g_applydate from g_cardapply a left join g_cardapplydetail b on a.g_applyno=b.g_applyno and b.g_idcard='440401430103082'
(2)select g_idcard,记录数=count(*) from g_cardapplydetail order by g_idcard having count(*)>2
(3)update g_cardapply set g_state='07' where g_applyno=(selct distinct g_applyno from g_cardapplydetail where g_idcard='440401430103082'
update g_cardapplydetail set g_state='07' where g_idcard ='440401430103082'
(4)delete from g_cardapplydetail where g_name like ‘李%’