文字列リテラル値'5'
を選択しています テーブルの各行:
select 5 from mytable_name;
そして、これはうまくいきます。 SELECT
にあるからです 選択できるステートメント:
- 列参照
- あなたの場合のようなリテラル値。
- 機能。
- 値の式。
- 式を選択します。
標準SQLで定義されているとおり:
更新:
ただし、名前があなたの場合のような数字である列がある場合は、その中の値を次のように選択するために、その列をエスケープする必要があります。
SELECT `143` FROM Table1;
これにより、列143
のすべての行が選択されます 。
しかし、これ:
SELECT 143 FROM Table1;
テーブルで見つかった行ごとに文字列リテラル143を選択します。
注意: 可能であれば、これらの列にこのように名前を付けないようにしてください。これを行わないことをお勧めします。ベストプラクティスです。
SQLフィドルデモ
更新2:
143
を選択した場合は注意してください または'143'
、または"143"
これにより、リテラル値143
が選択されます 列の日付ではありません。以下は同じです:
SELECT 143 FROM Table1;
SELECT '143' FROM Table1;
SELECT "143" FROM Table1;
これらすべてのSELECT
sは列のデータを選択せず、リテラル値143
を選択します 列データではありません。このデモを見る:
デモ
2つで列名をエスケープする必要があります:
``
このように:
SELECT `143` FROM table1;
ない:
SELECT '143' FROM table1'
私がここでしたように:
適切なデモ