SQLクエリでフィールド「from」を使用して問題が発生するのはなぜですか?
fromは使用できません from のため、列名として直接 MySQLの予約語です。これを回避するには、バックティック記号を使用する必要があります。まずテーブルを作成しましょう-
mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, `from` varchar(100), Name varchar(10) ); Query OK, 0 rows affected (0.92 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable(`from`,Name) values('US','John'); Query OK, 1 row affected (0.20 sec) mysql> insert into DemoTable(`from`,Name) values('UK','Carol'); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable(`from`,Name) values('AUS','David'); Query OK, 1 row affected (0.12 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select *from DemoTable;
これにより、次の出力が生成されます-
+----+------+-------+ | Id | from | Name | +----+------+-------+ | 1 | US | John | | 2 | UK | Carol | | 3 | AUS | David | +----+------+-------+ 3 rows in set (0.00 sec)
以下は、予約語から列名として使用するクエリです-
mysql> select `from` from DemoTable;
これにより、次の出力が生成されます-
+------+ | from | +------+ | US | | UK | | AUS | +------+ 3 rows in set (0.00 sec)
-
フィールド値からコンマをカウントするMySQLクエリ?
以下は構文です- select length(yourColumnName) - length(replace(yourColumnName, ',', '')) as anyAliasName from yourTableName; まずテーブルを作成しましょう- mysql> create table DemoTable1510 -> ( -> Value varchar(50) -> ); Query OK, 0 rows affected (6.75
-
MySQLのENUMフィールドを使用して行を選択する
最初にテーブルを作成しましょう- mysql> create table DemoTable -> ( -> EmployeeStatus ENUM('FULLTIME','Intern') default NULL -> ); Query OK, 0 rows affected (0.66 sec) 挿入コマンドを使用してテーブルにいくつかのレコードを挿入します- mysql> insert into DemoTable values('FULL