-
引数なしでUNIX_TIMESTAMP()関数を使用すると、MySQLは何を返しますか?
この場合、MySQLは現在の日付と時刻のUnixタイムスタンプを返します。したがって、引数を使用しないことは、UNIX_TIMESTAMP()関数の引数としてNOW()を使用することと同じであると言えます。 たとえば、UNIX_TIMESTAMP()のクエリを値なしで、引数としてNOW()を使用して実行すると、MySQLは同じ結果を返します。 mysql> Select UNIX_TIMESTAMP(); +------------------+ | UNIX_TIMESTAMP() | +------------------+ | 15094
-
MySQL FROM_UNIXTIME()関数の使用法は何ですか?
MySQL FROM_UNIXTIME()関数は、Unixタイムスタンプのバージョンから日付/日時を返すために使用されます。戻り値の形式は、関数のコンテキスト(コンテキストが数値か文字列か)に応じて、「YYYY-MM-DD HH:MM:SS」または「YYYYMMDDHHMMSS.uuuuuu」のいずれかになります。 以下はFROM_UNIXTIMEの構文です- FROM_UNIXTIME(unix_timestamp, [format]) ここで、unix_timestampはUnixタイムスタンプの値であり、formatには、値を返すフォーマット文字列が含まれています。 例 mysql&g
-
MySQLでは、フォーマット文字列でFROM_UNIXTIME()関数をどのように使用できますか?
FROM_UNIXIME()関数の出力を特定の形式にする場合は、日付形式の文字列または時間形式の文字列、あるいはその両方を使用できるとします。以下は、FROM_UNIXTIME()関数でフォーマット文字列を使用する例です- mysql> Select FROM_UNIXTIME(1555033470 '%Y %M %D')AS 'Formatted Output'; +------------------+ | Formatted Output | +------------------+ | 2019 April 12th | +------
-
MySQL GROUP BY句で複数の列を使用することの意味は何ですか?
GROUP BY句で複数の列を指定することにより、結果セットをより小さなグループに分割できます。 GROUP BY句で指定される列が多いほど、グループは小さくなります。 例 mysql> Select designation, YEAR(Doj), count(*) from employees GROUP BY designation, YEAR(DoJ); +-------------+-----------+----------+ | designation | YEAR(Doj) | count(*) | +-------------+-----------+---------
-
MySQL TIMEDIFF()関数の出力がTIMEフィールドの範囲値を超えるとどうなりますか?
MySQLのTIMEフィールドの範囲は‘-838:59:59’であることがわかっています。 「838:59:59」 。これで、TIMEDIFF()関数の出力がこの範囲を超えると、MySQLは「-838:59:59」または「838:59:59」のいずれかを返します。 引数の値によって異なります。 例 mysql> Select TIMEDIFF(2017-09-01 03:05:45,2017-10-22 03:05:45)AS Out of Range TIME Difference; +------------------------------+ | Out of Range TI
-
MySQL SELECT句でGroups関数をどのように使用できますか?
グループ関数は値のセットで動作することがわかっているため、グループ関数をSELECT句で使用すると、クエリの選択基準を満たす行で使用され、グループ関数の出力は、クエリの出力として返されます。 例 以下の例では、「Student」テーブルのフィールドのSELECTステートメントでいくつかのグループ関数を使用しており、ステートメントの出力はそれらのグループ関数の出力です- mysql> Select COUNT(Name), MIN(Id), AVG(Id), MAX(Id), COUNT(*) from Student; +-------------+---------+--------
-
UNIXタイムスタンプとMySQLタイムスタンプの違いは何ですか?
MySQLでは、UNIXTIMESTAMPSは32ビット整数として格納されます。一方、MySQL TIMESTAMPSも同様の方法で保存されますが、読み取り可能なYYYY-MM-DD HH:MM:SS形式で表されます。 例 mysql> Select UNIX_TIMESTAMP('2017-09-25 02:05:45') AS 'UNIXTIMESTAMP VALUE'; +---------------------+ | UNIXTIMESTAMP VALUE | +---------------------+ | 1506285345
-
MySQL SELECTクエリで非グループフィールドでグループ関数を使用するにはどうすればよいですか?
SELECTクエリで非グループフィールドを持つグループ関数を使用する場合は、GROUPBY句を使用する必要があります。一般的な構文は次のとおりです 構文 SELECT group_function1,…, non-group-column1,… from table_name GROUP BY column_name; 例 mysql> Select COUNT(*), id from Student GROUP BY id; +----------+------+ | COUNT(*) | id | +----------+------+ |
-
MySQLでは、時間値を整数としてどのように表すことができますか?
MySQLでは、UNIXタイムスタンプ形式は時間値を整数として表す方法です。日付値に表される整数値は秒数になります。これらの秒数をカウントする開始日は「1970-01-01」です。 mysql> SELECT UNIX_TIMESTAMP('2017-10-22 04:05:36')AS 'Total Number of Seconds'; +-------------------------+ | Total Number of Seconds | +-------------------------+ | &n
-
タイムスタンプ値を整数に変換するためにマイクロ秒を追加すると、MySQLは何を返しますか?
タイムスタンプの値は、UNIX_TIMESTAMP()関数を使用して秒数に変換できることがわかっています。 UNIX_TIMESTAMPの値の長さはわずか10桁であるため、MySQLはタイムスタンプの値に追加されたマイクロ秒を無視します。 例 mysql> SELECT UNIX_TIMESTAMP('2017-10-22 04:05:36')AS 'Total Number of Seconds'; +-------------------------+ | Total Number of Seconds | +---------------------
-
INT列にMySQLTIMESTAMPとして格納されている値を取得する適切な方法は何ですか?
FROM_UNIXTIME()関数を使用して、テーブルの列にINTとして格納されているMySQLTIMESTAMPとして値を取得できます。 たとえば、「val1」という名前の列を持つ「test123」というテーブルがあります。この列には、整数値を次のように格納しました- mysql> Select * from test123; +------------+ | val1 | +------------+ | 150862 | | 1508622563 | | 622556879 | | 21474836
-
UNIX_TIMESTAMP()またはFROM_UNIXTIME()関数で範囲外の値を渡すと、MySQLは何を返しますか?
UNIX_TIMESTAMPで範囲外の値を渡すと、MySQLは0を返します。有効な値の範囲はTIMESTAMPデータ型の場合と同じです。 例 mysql> Select UNIX_TIMESTAMP('1969-01-01 04:05:45'); +---------------------------------------+ | UNIX_TIMESTAMP('1969-01-01 04:05:45') | +---------------------------------------+ | &
-
MySQLSELECTクエリでGROUPBY句のない非グループフィールドを持つグループ関数を使用しないのはなぜですか?
これは、GROUP BY句がないと、MySQLによって返される出力が誤解を招く可能性があるためです。以下の「学生」の表に、それを示すために次の例を示します- mysql> Select * from Student; +------+---------+---------+-----------+ | Id | Name | Address | Subject | +------+---------+---------+-----------+ | 1 | Gaurav | Delhi  
-
グループ関数COUNT(*)とGROUP BY句を使用して、列の値の繰り返しをどのように知ることができますか?
COUNT(*)およびGROUP BY句を使用して、列の値の繰り返しを見つけることができます。以下は、テーブル「Student」の「Name」列でCOUNT(*)とGROUP BY句を使用して、それを示す例です- mysql> select count(*),name from student group by name; +----------+---------+ | count(*) | name | +----------+---------+ | 1 | Aarav | | 2 &n
-
MySQL出力を昇順で並べ替えるにはどうすればよいですか?
結果セットを昇順で並べ替える場合は、ORDER BY句でASC(ASCENDINGの短縮形)キーワードを指定する必要があります。 構文 Select column1, column2,…,columN From table_name ORDER BY column1[column2,…] ASC; 例 次の例では、結果セットを「名前」列で昇順で並べ替えています。 mysql> Select * from Student ORDER BY Name ASC; +------+---------+---------+-----------+ | Id  
-
複合INTERVALユニットの囲まれたユニット値のセットに1つの値のみを書き込むと、MySQLは何を返しますか?
この場合、MySQLは、複合INTERVAL単位で指定されたほとんどの単位を考慮します。同封の単位値のセットで提供される単一の値に基づいて間隔を計算した後、出力を返します。次の例はそれを明確にします- mysql> Select TIMESTAMP('2017-10-22 04:05:36' + INTERVAL '2 ' year_month) AS 'Only Month Value Changed'; +--------------------------+ | Only Month Value Changed | +--------
-
INTERVALキーワードで囲まれた単位値のセットを使用すると、MySQLは何を返しますか?
この場合、MySQLは、囲まれた単位値のセットで提供される2つのうち最初の値を考慮します。 INTERVALキーワードで指定された単位で、囲まれたセットから考慮された値に基づいて間隔を計算した後、警告とともに出力を返します。 次の例で明確になります- mysql> Select TIMESTAMP('2017-10-22 04:05:36' + INTERVAL '4 2' Hour)AS 'HOUR VALUE INCREASED BY 4'; +---------------------------+ | HOUR VALUE INC
-
結果セットにない列に基づいてMySQL出力をソートするにはどうすればよいですか?
その出力の一部でもないか、結果セットに含まれていない列に基づいて、ソートされた出力を取得することは非常に可能です。これは、必要なフィールドを選択し、必要な並べ替え順序に基づいてフィールドの名前を書き込むことで実行できます。以下は、それを示す例です。ここでは、列「id」に基づいて、「Name」フィールドと「Address」フィールドを持つ結果セットを並べ替えました。 mysql> Select Name, Subject From Student ORDER BY Id; +---------+-----------+ | Name | Subject  
-
DATEDIFF()関数の引数として日付コンポーネントとともに時間コンポーネントを含めると、MySQLは何を返しますか?
MySQL DATEDIFF()関数も日付と時刻の値で機能しますが、時刻の値は無視されます。したがって、DATEDIFF()関数に時刻の値を含めても、MySQLは時刻の値を無視することにより、日付間の差を日数で返します。 mysql> Select DATEDIFF('2018-10-22 04:05:36','2017-10-22 03:05:45'); +-------------------------------------------------------+ | DATEDIFF('2018-10-22 04:05:36',
-
MySQL SELECTステートメントを使用してテーブルの行数をカウントするにはどうすればよいですか?
テーブル内の行の総数をカウントするには、SELECT句でCOUNT(*)関数を使用する必要があります。 例 mysql> Select COUNT(*) from Student; +----------+ | COUNT(*) | +----------+ | 4 | +----------+ 1 row in set (0.06 sec) 上記のクエリは、「Student」テーブルの行の総数をカウントします。 次のように、COUNT(*)関数でWHERE句を使用することもできます。 mysql> Select COU