Portland, ME Climate in February

Temperature for February

In Portland, ME during February the average high temperature is 36.1°F. The hottest day on record was February 1, 1989 when the temperature recorded was 62.1°F.

Portland, ME daily average and extreme temperature range for February

Low Temperature

Overnight in February the average temperature drops below freezing at 15.4°F, with the lowest temperature of -20.9°F being recorded on February 11, 1983. On average there are 10 days in February when the temperature stays below freezing all day. In the worst February there were 20 days when the temperature did not make it above freezing. Overnight temperatures drop below freezing between 20 and 29 times in February.

Precipitation for February

In February the average monthly rainfall in Portland, ME is 3.34 inches with rain usually falling on between 5 and 6 days. 1987 was the driest February with only 0.08 inches of rain falling, and 1973 was the wettest February with 13.65 inches of rain. The wettest single day in February was 26 February 2010 when 3.83 inches of rain fell.

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

  BENCHMARKS  
Loading Time: Base Classes  0.0068
Controller Execution Time ( Climate / Summary )  0.0831
Total Execution Time  0.0900
  GET DATA  
No GET data exists
  MEMORY USAGE  
2,288,628 bytes
  POST DATA  
No POST data exists
  URI STRING  
climate/summary/united-states/maine/portland-intl-jetport/february
  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` =  2
AND `locationId` =  '4036'
GROUP BY `monthNo
0.0004   SELECT `monthNo`, AVG(`meanMinTemp`) AS meanMinTempAVG(`meanMaxTemp`) AS meanMaxTemp
FROM 
(`aggMonthly`)
WHERE `monthNo` =  2
AND `locationId` =  '4036'
GROUP BY `monthNo
0.0031   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` =  2
ORDER BY 
`maxTempdesc
LIMIT 1 
0.0013   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` =  2
ORDER BY 
`minTempasc
LIMIT 1 
0.0242   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 2 group by year) as count_freezing 
0.0249   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 2 group by year) as count_freezing 
0.0008   SELECT AVG(`sumRainfall`) AS sumRainfallAVG(`daysRainfall`) AS daysRainfallAVG(`daysSnow`) AS daysSnowAVG(`daysTornado`) AS daysTornadoAVG(`daysThunder`) AS daysThunder, `monthNo`
FROM (`aggMonthly`)
WHERE `monthNo` =  2
AND `locationId` =  '4036'
GROUP BY `monthNo
0.0005   SELECT `sumRainfall`, `daysRainfall`, `year`
FROM (`aggMonthly`)
WHERE `monthNo` =  2
AND `locationId` =  '4036'
ORDER BY `sumRainfallasc
LIMIT 1 
0.0005   SELECT `sumRainfall`, `daysRainfall`, `year`
FROM (`aggMonthly`)
WHERE `monthNo` =  2
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` =  2
ORDER BY 
`maxRainfalldesc
LIMIT 1 
  HTTP HEADERS  (Show)
  CONFIG VARIABLES  (Show)