SQL BETWEEN dla tekstu a wartości liczbowe

BETWEEN jest używany w aWHERE klauzula do wyboru zakresu danych między dwiema wartościami.
Jeśli mam rację, czy punkt końcowy zakresu jest wyłączony, czy nie, jest on specyficzny dla DBMS.
Czego nie rozumiem w następujących kwestiach:
Jeśli mam tabelę wartości i wykonuję następujące zapytanie:

SELECT food_name 
    FROM health_foods 
    WHERE calories BETWEEN 33 AND 135;`  

Zapytanie zwraca jako wiersze wynikówwłącznie z kalorie = 33 i kalorie = 135 (tj. punkty końcowe zakresu sąw zestawie).

Ale jeśli to zrobię:

SELECT food_name 
    FROM health_foods 
    WHERE food_name BETWEEN 'G' AND 'O';

ja robięnie zdobądź wierszefood_name zaczynając odO. To znaczy. koniec zakresu towyłączony.
Aby zapytanie działało zgodnie z oczekiwaniami, wpisuję:

SELECT food_name 
    FROM health_foods 
    WHERE food_name BETWEEN 'G' AND 'P';`   

Moje pytanie brzmi: dlaczego jest taka różnicaBETWEEN numery i dane tekstowe?

questionAnswers(3)

yourAnswerToTheQuestion