我数据库有三个表,分别是T1,T2,T3其中T1,T2中的数据字段值都一样为ID Number(学号) IP(就是IP地址)Time(签到时间)类型(T1T2分别存的是签到,签退字),T3表是学生表(包括学生的学号,姓名信息),我想从这三个表中取数据目的是学生每点击签到签退按钮,另一个页面显示签到或签退的记录(包含学号,姓名,IP,时间,类型),我写的语句是select * from Pre0,Pre1,Member WHERE Member.Number=Pre1.Number AND Pre0.Number=Member.Number order by Pre0.Time,Pre1.Time asc,但显示的所有类型都是签到,而且记录的条数也不正确,谁能帮我指正一下吗?谢谢
,应该拆成2个语句,分别查签到和签退
select *
from Pre0,Member
WHERE Pre0.Number=Member.Number
order by Pre0.Time ascselect *
from Pre1,Member
WHERE Pre1.Number=Member.Number
order by Pre1.Time asc
--既然是放在2个表中,如果要一起显示的话,应该这样。
--然后按类型做一个排序,把签到、签退分开。select * from (
select t1.*,t3.name from t1 ,t3 where t1.Number=t3.Number
union
select t2.*,t3.name from t2 ,t3 where t1.Number=t3.Number) a
order by 类型 asc