Избирате стойност на низов литерал '5'
за всеки ред във вашата таблица:
select 5 from mytable_name;
И това работи добре. Тъй като в SELECT
изявление, което можете да изберете:
- Препратка към колона,
- Буквална стойност като във вашия случай.
- Функция.
- израз на стойност.
- Изберете израз.
Както е дефинирано от стандартния SQL:
Актуализация:
Въпреки това, ако имате колона с име е число като във вашия случай, трябва да го избягате, за да изберете стойностите в него по следния начин:
SELECT `143` FROM Table1;
Това ще избере всички редове в колоната 143
.
Но това:
SELECT 143 FROM Table1;
Ще избере низовия литерал 143 за всеки ред, намерен в таблицата.
Обърнете внимание, че: Ако е възможно, опитайте се да не наименувате тези колони по този начин, препоръчително и най-добра практика е да не правите това.
SQL Fiddle Демо
Актуализация 2:
Имайте предвид, че ако изберете 143
или '143'
, или дори "143"
това ще избере литералната стойност 143
не датата на колоната. Следните са същите:
SELECT 143 FROM Table1;
SELECT '143' FROM Table1;
SELECT "143" FROM Table1;
Всички тези SELECT
s няма да изберат данните в колоната, те ще изберат литералната стойност 143
не данните в колоната. Вижте тази демонстрация:
Демо
Трябва да избягате от името на колоната с двете:
``
Като това:
SELECT `143` FROM table1;
Не:
SELECT '143' FROM table1'
Като това, което направих тук:
Правилната демонстрация