U selecteert een letterlijke tekenreekswaarde '5'
voor elke rij in uw tabel:
select 5 from mytable_name;
En dit werkt prima. Omdat in de SELECT
verklaring die u kunt selecteren:
- Kolomreferentie,
- Letterlijke waarde zoals in jouw geval.
- Functie.
- waarde-expressie.
- Selecteer uitdrukking.
Zoals gedefinieerd door de standaard SQL:
Bijwerken:
Als u echter een kolom heeft waarvan de naam een nummer is, zoals in uw geval, moet u eraan ontsnappen om de waarden erin te selecteren, zoals:
SELECT `143` FROM Table1;
Dit selecteert alle rijen in de kolom 143
.
Maar dit:
SELECT 143 FROM Table1;
Selecteert de letterlijke tekenreeks 143 voor elke rij in de tabel.
Let op: Probeer indien mogelijk deze kolommen niet op deze manier een naam te geven, het wordt aanbevolen en een best practice om dit niet te doen.
SQL Fiddle-demo
Update 2:
Houd er rekening mee dat, als u 143
. selecteert, of '143'
, of zelfs "143"
dit selecteert de letterlijke waarde 143
niet de kolomdatum. De volgende zijn hetzelfde:
SELECT 143 FROM Table1;
SELECT '143' FROM Table1;
SELECT "143" FROM Table1;
Al deze SELECT
s selecteren de gegevens in de kolom niet, ze selecteren de letterlijke waarde 143
niet de kolomgegevens. Bekijk deze demo:
Demo
U moet de kolomnaam escapen met de twee:
``
Zoals dit:
SELECT `143` FROM table1;
Niet:
SELECT '143' FROM table1'
Zoals wat ik hier deed:
De juiste demo