MySQLのINTERVAL()関数をテーブルの列に適用する方法
INTERVAL()関数とテーブル列の組み合わせ
MySQLのINTERVAL()関数は、テーブルの列に対しても使用できます。その場合、関数の第1引数に列名を指定します。すると、その列に格納されているすべての値が、第2引数以降で指定した値と比較され、比較結果に基づいて結果セットが返されます。
サンプルデータの確認
ここでは、以下のような「employee」テーブルのデータを使用して、実際の動作を確認してみましょう。
mysql> Select * from employee568; +----+--------+--------+ | ID | Name | Salary | +----+--------+--------+ | 1 | Gaurav | 50000 | | 2 | Rahul | 20000 | | 3 | Advik | 25000 | | 4 | Aarav | 65000 | | 5 | Ram | 20000 | | 6 | Mohan | 30000 | | 7 | Aryan | NULL | | 8 | Vinay | NULL | +----+--------+--------+ 8 rows in set (0.00 sec)
INTERVAL()関数を使ったクエリ例
次のクエリでは、ID列をINTERVAL()関数の第1引数として指定し、WHERE句で条件を絞り込んでいます。
mysql> Select * from employee WHERE INTERVAL(ID,4) > 0; +----+-------+--------+ | ID | Name | Salary | +----+-------+--------+ | 4 | Aarav | 65000 | | 5 | Ram | 20000 | | 6 | Mohan | 30000 | | 7 | Aryan | NULL | | 8 | Vinay | NULL | +----+-------+--------+ 5 rows in set (0.00 sec)
結果の解説
上記の結果セットには、IDが4から8までの5行が含まれています。これは、これらの行においてINTERVAL()関数の戻り値が0より大きくなるためです。つまり、IDが4以上の行だけが条件「INTERVAL(ID,4) > 0」を満たし、抽出対象となっていることがわかります。
-
MySQLでテーブルのすべての列を削除する方法|DROP TABLEコマンドの使い方を解説
MySQLでテーブル内の全カラムを削除するには?MySQLでは、テーブルに存在するすべてのカラム(列)を1つずつ削除していくことはできません。すべての列を削除したい場合、つまりテーブル自体をデータベースから取り除きたい場合は、DROP TABLE コマンドを使用します。DROP TABLEの基本構文DROP TABLE テーブル名;このコマンドを実行すると、指定したテーブルとその中のすべてのデータ・構造が完全に削除されます。なお、この操作は元に戻せないため、実行前には必ず内容を確認してください。実際に試してみよう:サンプルテーブルの作成まずは動作を確認するために、以下のようにサンプルテーブルを
-
MySQLテーブルで「year」をカラム名として使用することはできる?
はい、MySQLのテーブルでは「year」をカラム名として使用できます。「year」はMySQLの予約語ではないため、特別なエスケープ処理を行わなくても問題なく利用できます。 テーブルの作成 まず、テーブルを作成してみましょう。 mysql> create table DemoTable ( Year int ); Query OK, 0 rows affected (0.87 sec) レコードの挿入 insertコマンドを使用して、テーブルにいくつかのレコードを挿入します。 mysql> insert into DemoTable values(1995); Query