Ignoring AM abbreviation leads to wrong processing the 12th hour.

**Bug reproducing**
```sql
SELECT
    parseDateTimeBestEffort('2020-02-01 12:10:00 AM') AS am,
    parseDateTimeBestEffort('2020-02-01 12:10:00 PM') AS pm

┌──────────────────am─┬──────────────────pm─┐
│ 2020-02-01 12:10:00 │ 2020-02-01 12:10:00 │
└─────────────────────┴─────────────────────┘
```

**Expected behavior**
```sql
┌──────────────────am─┬──────────────────pm─┐
│ 2020-02-01 00:10:00 │ 2020-02-01 12:10:00 │
└─────────────────────┴─────────────────────┘
```
readDecimalNumber<10>(res, digits);
                return ReturnType(true);
            }
            else if (num_digits == 9 && !year && !has_time)
            {
                
                readDecimalNumber<9>(res, digits);
                return ReturnType(true);
            }
            else if (num_digits == 14 && !year && !has_time)
            {
                
                readDecimalNumber<4>(year, digits);
                readDecimalNumber<2>(month, digits + 4);
                readDecimalNumber<2>(day_of_month, digits + 6);
                readDecimalNumber<2>(hour, digits + 8);
                readDecimalNumber<2>(minute, digits + 10);
                readDecimalNumber<2>(second, digits + 12);
                has_time = true;
            }
            else if (num_digits == 8 && !year)
            {
                
                readDecimalNumber<4>(year, digits);
                readDecimalNumber<2>(month, digits + 4);
                readDecimalNumber<2>(day_of_month, digits + 6);
            }
            else if (num_digits == 6)
            {