Mysql
 sql >> база данни >  >> RDS >> Mysql

Предайте номер като име на колона в оператора за избор на Sql

Избирате стойност на низов литерал '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'

Като това, което направих тук:

Правилната демонстрация



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изпълнете SQL скрипт за създаване на таблици и редове

  2. Как да генерирам произволно число без повторение в базата данни с помощта на PHP?

  3. MySQL получава редове, но предпочита една стойност на колона пред друга

  4. Как да сравним 2 списъка и да ги обединим в Python/MySQL?

  5. PreparedStatement игнорира параметрите в заявката:java.sql.SQLException:Индекс на параметър извън обхвата (1> брой параметри, което е 0)