Portland, ME Climate in December

Temperature for December

In Portland, ME during December the average high temperature is 39.2°F. The hottest day on record was December 7, 2001 when the temperature recorded was 71.1°F.

Portland, ME daily average and extreme temperature range for December

Low Temperature

Overnight in December the average temperature drops below freezing at 19.5°F, with the lowest temperature of -20.0°F being recorded on December 20, 1975. On average there are 8 days in December when the temperature stays below freezing all day. In the worst December there were 27 days when the temperature did not make it above freezing. Overnight temperatures drop below freezing between 21 and 31 times in December.

Precipitation for December

In December the average monthly rainfall in Portland, ME is 4.26 inches with rain usually falling on between 8 and 9 days. 1980 was the driest December with only 1.08 inches of rain falling, and 1983 was the wettest December with 10.26 inches of rain. The wettest single day in December was 4 December 1990 when 3.02 inches of rain fell.

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

  BENCHMARKS  
Loading Time: Base Classes  0.0069
Controller Execution Time ( Climate / Summary )  0.0951
Total Execution Time  0.1020
  GET DATA  
No GET data exists
  MEMORY USAGE  
2,288,608 bytes
  POST DATA  
No POST data exists
  URI STRING  
climate/summary/united-states/maine/portland-intl-jetport/december
  CLASS/METHOD  
climate/summary
  DATABASE:  xrssweather0-climatespy   QUERIES: 11  (Hide)
0.0006   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` =  12
AND `locationId` =  '4036'
GROUP BY `monthNo
0.0007   SELECT `monthNo`, AVG(`meanMinTemp`) AS meanMinTempAVG(`meanMaxTemp`) AS meanMaxTemp
FROM 
(`aggMonthly`)
WHERE `monthNo` =  12
AND `locationId` =  '4036'
GROUP BY `monthNo
0.0028   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` =  12
ORDER BY 
`maxTempdesc
LIMIT 1 
0.0014   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` =  12
ORDER BY 
`minTempasc
LIMIT 1 
0.0367   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 12 group by year) as count_freezing 
0.0251   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 12 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` =  12
AND `locationId` =  '4036'
GROUP BY `monthNo
0.0004   SELECT `sumRainfall`, `daysRainfall`, `year`
FROM (`aggMonthly`)
WHERE `monthNo` =  12
AND `locationId` =  '4036'
ORDER BY `sumRainfallasc
LIMIT 1 
0.0004   SELECT `sumRainfall`, `daysRainfall`, `year`
FROM (`aggMonthly`)
WHERE `monthNo` =  12
AND `locationId` =  '4036'
ORDER BY `sumRainfalldesc
LIMIT 1 
0.0015   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` =  12
ORDER BY 
`maxRainfalldesc
LIMIT 1 
  HTTP HEADERS  (Show)
  CONFIG VARIABLES  (Show)