Below is the list of tables from the database along with their columns and datatype. Need to generate an accurate SQL query for the question.
Only use the columns present in the respective table. Only use the columns which are required to generate the SQL query. Only use table joins if required and not otherwise.

### Tables ###
TABLE: CREATE TABLE table_name_31 (season INTEGER, points VARCHAR, driver VARCHAR, percentage_of_possible_points VARCHAR)

### Question ###
How many seasons have fernando alonso as the driver, and a percentage of possible points of 64.12% and points less than 109?

### Accurate SQL ###

SELECT SUM(season) FROM table_name_31 WHERE driver = "fernando alonso" AND percentage_of_possible_points = "64.12%" AND points < 109