我有一个MYSQL表,包含以下信息。它保存着某人可以注册的活动的日期和时间。
1 1362981600 9中午0
2 1363586400 9中午0
3 1364191200 9中午0
4 1362981600 1-4 pm 0
5 1363586400 1-4 pm 0
6 1364191200 1-4 pm 0
7 1363240800 1-4pm 0
8 1363845600 1-4pm 0
9 1363327200 9中午0
10 1363327200 1-4 pm 0
11 1363327200 3-7 pm 1
我需要一个mysql查询,它会提取所有已注册的字段= 0,并且只显示每个日期中的一个(星期一或星期二等),这些日期有一个时间段。
因此,如果我从注册表= 0的表中执行select *,我会得到这些结果,使用时间戳获取星期几我使用PHP生成以下内容,同时循环查询。
星期一,9-noon
星期一,9-中午
星期一,9-中午
星期一,下午1-4点
星期一,下午1-4点
星期一,下午1-4点
星期四,下午1-4点
星期四,下午1-4点
星期五,中午9点
星期五,下午1-4点
我想得到的是:
星期一,9-中午
星期一,下午1-4点
星期四,下午1-4点
星期五,中午9点
星期五,下午1-4点
谢谢!
答案 0 :(得分:0)
你需要添加一个“group by”子句,你就可以了。我不知道你用什么公式来推导这一天,所以我在下面任意使用一个例子来说明:
select date(from_unixtime(date)) as date
, dayname(from_unixtime(date)) as day
, time
, min(date) as cronos
from table
where registered=0
group by date, day, time
order by cronos asc, time asc
用于匹配以下评论中添加的说明的不同查询:
select dayofweek(from_unixtime(date)) as day_num
, dayname(from_unixtime(date)) as day_name
, time
from table
where registered=0
group by day_num, day_name, time
order by day_num asc, time asc;