私はこのMYSQLクエリを持っています:
SELECT
time_of_day as time,
player_date as date ,
CASE max(case when rownum = 1 then player_value end) WHEN 'P' THEN 'P' WHEN 'E' THEN 'P[' ELSE ' ' END as TMZH ,
CASE max(case when rownum = 2 then player_value end) WHEN 'P' THEN 'P' WHEN 'E' THEN 'P[' ELSE ' ' END as BLAK
FROM (
select
player_date,
time_of_day,
player_value,
player_cid,
@row:=case when @prev=player_date then @row else 0 end + 1 as rownum,
@prev:=player_date
from (
select
t1.player_date,
t1.player_value,
t1.time_of_day ,
t2.player_cid
from
availability t1
inner join players t2 on t1.player_id = t2.player_id
order by player_date, player_cid
) d,
(SELECT @row:=0, @prev:=null) r
order by player_date, player_cid
) src
WHERE
YEAR(player_date) = YEAR(NOW())
group by
player_date,
time_of_day
そして、私はそのような結果を得る(抜粋):
time date TMZH BLAK
...
am 2013-06-03 P[
pm 2013-06-03 P
am 2013-06-04 P
pm 2013-06-04 P[
am 2013-06-05
pm 2013-06-05
...
また、これらの値は TMZH 列にのみ存在する必要があります。それらの可用性テーブル エントリにはキー 1 があり、現在、そのテーブルのすべてのエントリにはキー 1 があります (これは TMZH player_cid フィールドに対応します)。
何がこれを引き起こす可能性がありますか?
PS。重複エントリーすいません。