use*_*897 6 mysql error-handling compilation limit sqlfiddle
我最近创建了一个成功编译并返回所需结果的查询.当我使用那段代码作为另一段代码中的子查询时,stackoverflow上的用户想出了我,我遇到了一些问题,最终解决了.我尝试将此查询用作给我的那段代码中的子查询.但是,sql小提琴不会返回任何内容.没有错误或编译的消息.当我尝试输入语法错误时 - 就像一个随机+符号,没有任何反应.是因为查询太长了?
模式
CREATE TABLE sampleData
(
id MEDIUMINT NOT NULL AUTO_INCREMENT,
timecode int,
count int,
PRIMARY KEY (id)
)
#ENGINE=MyISAM
;
INSERT INTO sampleData
(timecode, count)
VALUES
(1344893440, 1), ( 1346014720, 1),( 1344898688,1),( 1345654784,1),( 1345978368,1),
( 1345959296,1), (1345064704,1), ( 1345156352,1),( 1345225600,1),
(1345017984,1),( 1345640960,1),( 1346019968,1),( 1345834752,1),
( 1345438464,1),( 1344986880,1),( 1345045632,1),( 1345557888,1),( 1344973056,1),( 1345087232,1),( 1345433216,1),( 1345691008,1),
( 1344917760,1),( 1345253248,1),( 1344934912,1),( 1345890048,1),( 1345272448,1), (1345829504,1),( 1345798400,1),( 1345203200,1),( 1344741120,1),
( 1345175552,1),( 1344824192,1),( 1344926336,1),( 1345571712,1),( 1344931584,1),( 1345211776,1),( 1345059456,1),( 1345516288,1),( 1345441920,1),( 1346009472,1)
Run Code Online (Sandbox Code Playgroud)
询问
select t_0.*,
(coalesce(t_3.average_number_of_votes_per_previous_period_days, 0) - coalesce(t_4.average_number_of_votes_per_previous_period_days, 0)) * 100.0
from
(select t.*,
(coalesce(t_1.count, 0) - coalesce(t_2.count, 0)) * 100.0 as "percentage increase in count in %"
from
(
SELECT sum(1) AS ordr,
t1.id,t1.day, t1.count, SUM(t2.count) as aggregate, (SUM(t2.count)-t1.count)/(sum(1)-1) as "average_number_of_votes_per_previous_period_days"
FROM
(SELECT id, date(FROM_UNIXTIME( timecode)) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t1
INNER JOIN
(SELECT date(FROM_UNIXTIME( timecode) ) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t2
on t1.day >= t2.day
GROUP BY t1.day, t1.count
ORDER BY t1.day
)t
left outer join
(
SELECT sum(1) AS ordr,
t1.id,t1.day, t1.count, SUM(t2.count) as aggregate, (SUM(t2.count)-t1.count)/(sum(1)-1) as "average_number_of_votes_per_previous_period_days"
FROM
(SELECT id, date(FROM_UNIXTIME( timecode)) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t1
INNER JOIN
(SELECT date(FROM_UNIXTIME( timecode) ) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t2
on t1.day >= t2.day
GROUP BY t1.day, t1.count
ORDER BY t1.day
)t_1
on t.ordr = t_1.ordr + 1 left outer join
(
SELECT sum(1) AS ordr,
t1.id,t1.day, t1.count, SUM(t2.count) as aggregate, (SUM(t2.count)-t1.count)/(sum(1)-1) as "average_number_of_votes_per_previous_period_days"
FROM
(SELECT id, date(FROM_UNIXTIME( timecode)) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t1
INNER JOIN
(SELECT date(FROM_UNIXTIME( timecode) ) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t2
on t1.day >= t2.day
GROUP BY t1.day, t1.count
ORDER BY t1.day
) t_2
on t.ordr = t_2.ordr + 2)t_0
left outer join
(select t.*,
(coalesce(t_1.count, 0) - coalesce(t_2.count, 0)) * 100.0 as "percentage increase in count in %"
from
(
SELECT sum(1) AS ordr,
t1.id,t1.day, t1.count, SUM(t2.count) as aggregate, (SUM(t2.count)-t1.count)/(sum(1)-1) as "average_number_of_votes_per_previous_period_days"
FROM
(SELECT id, date(FROM_UNIXTIME( timecode)) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t1
INNER JOIN
(SELECT date(FROM_UNIXTIME( timecode) ) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t2
on t1.day >= t2.day
GROUP BY t1.day, t1.count
ORDER BY t1.day
)t
left outer join
(
SELECT sum(1) AS ordr,
t1.id,t1.day, t1.count, SUM(t2.count) as aggregate, (SUM(t2.count)-t1.count)/(sum(1)-1) as "average_number_of_votes_per_previous_period_days"
FROM
(SELECT id, date(FROM_UNIXTIME( timecode)) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t1
INNER JOIN
(SELECT date(FROM_UNIXTIME( timecode) ) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t2
on t1.day >= t2.day
GROUP BY t1.day, t1.count
ORDER BY t1.day
)t_1
on t.ordr = t_1.ordr + 1 left outer join
(
SELECT sum(1) AS ordr,
t1.id,t1.day, t1.count, SUM(t2.count) as aggregate, (SUM(t2.count)-t1.count)/(sum(1)-1) as "average_number_of_votes_per_previous_period_days"
FROM
(SELECT id, date(FROM_UNIXTIME( timecode)) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t1
INNER JOIN
(SELECT date(FROM_UNIXTIME( timecode) ) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t2
on t1.day >= t2.day
GROUP BY t1.day, t1.count
ORDER BY t1.day
) t_2
on t.ordr = t_2.ordr + 2) t_3
on t.ordr = t_3.ordr + 1
left outer join
(select t.*,
(coalesce(t_1.count, 0) - coalesce(t_2.count, 0)) * 100.0 as "percentage increase in count in %"
from
(
SELECT sum(1) AS ordr,
t1.id,t1.day, t1.count, SUM(t2.count) as aggregate, (SUM(t2.count)-t1.count)/(sum(1)-1) as "average_number_of_votes_per_previous_period_days"
FROM
(SELECT id, date(FROM_UNIXTIME( timecode)) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t1
INNER JOIN
(SELECT date(FROM_UNIXTIME( timecode) ) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t2
on t1.day >= t2.day
GROUP BY t1.day, t1.count
ORDER BY t1.day
)t
left outer join
(
SELECT sum(1) AS ordr,
t1.id,t1.day, t1.count, SUM(t2.count) as aggregate, (SUM(t2.count)-t1.count)/(sum(1)-1) as "average_number_of_votes_per_previous_period_days"
FROM
(SELECT id, date(FROM_UNIXTIME( timecode)) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t1
INNER JOIN
(SELECT date(FROM_UNIXTIME( timecode) ) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t2
on t1.day >= t2.day
GROUP BY t1.day, t1.count
ORDER BY t1.day
)t_1
on t.ordr = t_1.ordr + 1 left outer join
(
SELECT sum(1) AS ordr,
t1.id,t1.day, t1.count, SUM(t2.count) as aggregate, (SUM(t2.count)-t1.count)/(sum(1)-1) as "average_number_of_votes_per_previous_period_days"
FROM
(SELECT id, date(FROM_UNIXTIME( timecode)) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t1
INNER JOIN
(SELECT date(FROM_UNIXTIME( timecode) ) AS day,(FROM_UNIXTIME( timecode)) AS original, COUNT(1) as 'count'
FROM sampleData
GROUP BY DAY) t2
on t1.day >= t2.day
GROUP BY t1.day, t1.count
ORDER BY t1.day
) t_2
on t.ordr = t_2.ordr + 2) t_4
on t_0.ordr = t_4.ordr + 2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2042 次 |
| 最近记录: |