Portland, ME Climate in April

Temperature for April

In Portland, ME during April the average high temperature is 55.3°F. The hottest day on record was April 28, 2009 when the temperature hit 90.0°F.

Portland, ME daily average and extreme temperature range for April

Low Temperature

During April the overnight temperature drops to an average of 33.6°F, with the lowest temperature of 15.1°F being recorded on April 6, 1995. On average there are 1 days in April when the temperature stays below freezing all day. In the worst April there were 2 days when the temperature did not make it above freezing. Overnight temperatures drop below freezing between 4 and 22 times in April.

Precipitation for April

In April the average monthly rainfall in Portland, ME is 5.20 inches with rain usually falling on between 13 and 14 days. 1999 was the driest April with only 0.28 inches of rain falling, and 1973 was the wettest April with 30.50 inches of rain. The wettest single day in April was 21 April 1973 when 4.72 inches of rain fell.

In April it usually snows on between 2 and 3 days. In April there have been some years when thunderstorms have occurred, although there are other years when there hasn't been a thunderstorm in April.

  BENCHMARKS  
Loading Time: Base Classes  0.0070
Controller Execution Time ( Climate / Summary )  0.0813
Total Execution Time  0.0883
  GET DATA  
No GET data exists
  MEMORY USAGE  
2,288,196 bytes
  POST DATA  
No POST data exists
  URI STRING  
climate/summary/united-states/maine/portland-intl-jetport/april
  CLASS/METHOD  
climate/summary
  DATABASE:  xrssweather0-climatespy   QUERIES: 11  (Hide)
0.0007   SELECT `locationId`, `cityName`, `urlName`, `urlState`, `stateName`, `stateCode`, `StationName`, `countryName`, `urlCountry`, `dd1`.`year` as earliestYear, `dd1`.`monthNo` as earliestMonth, `dd1`.`dayNo` as earliestDay, `dd2`.`year` as latestYear, `dd2`.`monthNo` as latestMonth, `dd2`.`dayNo` as latestDay
FROM 
(`dimLocation`)
JOIN `dimDatedd1 ON `dimLocation`.`beginDateId` = `dd1`.`dateId`
JOIN `dimDatedd2 ON `dimLocation`.`endDateId` = `dd2`.`dateId`
WHERE `urlState` =  'maine'
AND `urlName` =  'portland-intl-jetport'
LIMIT 1 
0.0006   SELECT `monthNo`, AVG(`meanMinTemp`) AS meanMinTempAVG(`meanMaxTemp`) AS meanMaxTemp
FROM 
(`aggMonthly`)
WHERE `monthNo` =  4
AND `locationId` =  '4036'
GROUP BY `monthNo
0.0006   SELECT `monthNo`, AVG(`meanMinTemp`) AS meanMinTempAVG(`meanMaxTemp`) AS meanMaxTemp
FROM 
(`aggMonthly`)
WHERE `monthNo` =  4
AND `locationId` =  '4036'
GROUP BY `monthNo
0.0019   SELECT `maxTemp`, `monthName`, `dayNo`, `dimDate`.`year`, `dimLocation`.`locationId`, `dimLocation`.`countryName`, `dimLocation`.`stateName`, `dimLocation`.`presentationName`, `dimLocation`.`urlCountry`, `dimLocation`.`urlState`, `dimLocation`.`urlName`
FROM (`aggMonthly`)
JOIN `dimLocationON `dimLocation`.`locationId` = `aggMonthly`.`locationId`
JOIN `dimDateON `dimDate`.`dateId` = `aggMonthly`.`maxTempDate`
WHERE `aggMonthly`.`locationId` =  '4036'
AND `dimDate`.`monthNo` =  4
ORDER BY 
`maxTempdesc
LIMIT 1 
0.0023   SELECT `minTemp`, `monthName`, `dayNo`, `dimDate`.`year`, `dimLocation`.`locationId`, `dimLocation`.`countryName`, `dimLocation`.`stateName`, `dimLocation`.`presentationName`, `dimLocation`.`urlCountry`, `dimLocation`.`urlState`, `dimLocation`.`urlName`
FROM (`aggMonthly`)
JOIN `dimLocationON `dimLocation`.`locationId` = `aggMonthly`.`locationId`
JOIN `dimDateON `dimDate`.`dateId` = `aggMonthly`.`minTempDate`
WHERE `aggMonthly`.`locationId` =  '4036'
AND `dimDate`.`monthNo` =  4
ORDER BY 
`minTempasc
LIMIT 1 
0.0240   select min(count_days) as min_daysavg(count_days) as average_daysmax(count_days) as max_days  from (select yearcount(*) as count_days from factDaily fd  join dimDate dd on (dd.dateId fd.DateId) where fd.locationId 4036 and minTemp <= 32  and dd.monthNo 4 group by year) as count_freezing 
0.0239   select min(count_days) as min_daysavg(count_days) as average_daysmax(count_days) as max_days  from (select yearcount(*) as count_days from factDaily fd  join dimDate dd on (dd.dateId fd.DateId) where fd.locationId 4036 and maxTemp <= 32  and dd.monthNo 4 group by year) as count_freezing 
0.0006   SELECT AVG(`sumRainfall`) AS sumRainfallAVG(`daysRainfall`) AS daysRainfallAVG(`daysSnow`) AS daysSnowAVG(`daysTornado`) AS daysTornadoAVG(`daysThunder`) AS daysThunder, `monthNo`
FROM (`aggMonthly`)
WHERE `monthNo` =  4
AND `locationId` =  '4036'
GROUP BY `monthNo
0.0004   SELECT `sumRainfall`, `daysRainfall`, `year`
FROM (`aggMonthly`)
WHERE `monthNo` =  4
AND `locationId` =  '4036'
ORDER BY `sumRainfallasc
LIMIT 1 
0.0004   SELECT `sumRainfall`, `daysRainfall`, `year`
FROM (`aggMonthly`)
WHERE `monthNo` =  4
AND `locationId` =  '4036'
ORDER BY `sumRainfalldesc
LIMIT 1 
0.0014   SELECT `maxRainfall`, `monthName`, `dayNo`, `dimDate`.`year`, `dimLocation`.`locationId`, `dimLocation`.`countryName`, `dimLocation`.`stateName`, `dimLocation`.`presentationName`, `dimLocation`.`urlCountry`, `dimLocation`.`urlState`, `dimLocation`.`urlName`
FROM (`aggMonthly`)
JOIN `dimLocationON `dimLocation`.`locationId` = `aggMonthly`.`locationId`
JOIN `dimDateON `dimDate`.`dateId` = `aggMonthly`.`maxRainfallDate`
WHERE `aggMonthly`.`locationId` =  '4036'
AND `dimDate`.`monthNo` =  4
ORDER BY 
`maxRainfalldesc
LIMIT 1 
  HTTP HEADERS  (Show)
  CONFIG VARIABLES  (Show)