MySQL - MAKETIME() 函式



MySQL 的MAKETIME()函式用於根據給定的小時、分鐘和秒建立時間值。

該函式接受三個表示小時、分鐘和秒值的數值作為引數(按此順序),根據這些值建立一個時間值,並返回結果。如果任何一個引數為NULL,結果仍然為NULL。此外,引數可以包含小數部分。

語法

以下是 MySQL MAKETIME() 函式的語法:

MAKETIME(hour,minute,second)

引數

此方法接受三個引數。具體描述如下:

  • hour: 時間的小時部分 (0 到 23)。

  • minute: 時間的分鐘部分 (0 到 59)。

  • second: 時間的秒部分 (0 到 59)。

返回值

該函式返回一個表示指定小時、分鐘和秒的時間值。

示例

以下示例演示了MAKETIME()函式的使用:

SELECT MAKETIME(13, 45, 25) As Result;

輸出

這將產生以下結果:

結果
13:45:25

示例

我們也可以像下面這樣將引數作為字串值傳遞給此函式:

SELECT MAKETIME('09', '21', '34') As Result;

輸出

以下是輸出:

結果
09:21:34.000000

示例

此函式的任何引數都可以為0。在下面的查詢中,我們將秒引數設定為 0:

SELECT MAKETIME(23, 24, 0) As Result;

以下是輸出:

結果
23:24:00

在這裡,我們將 0 傳遞給分鐘引數:

SELECT MAKETIME(23, 0, 55) As Result;

以下是輸出:

結果
23:00:55

示例

如果此函式的任何引數為 NULL,則返回NULL。在下面的查詢中,我們將 NULL 傳遞給秒引數:

SELECT MAKETIME(23, 24, NULL) As Result;

以下是輸出:

結果
NULL

在這裡,我們將 NULL 傳遞給函式的小時引數:

SELECT MAKETIME(NULL, 24, 55) As Result;

以下是輸出:

結果
NULL

示例

在以下示例中,我們使用 CREATE 語句建立一個名為SUBSCRIBERS的表,如下所示:

CREATE TABLE SUBSCRIBERS (
   SUBSCRIBERNAME varchar(255),
   PACKAGENAME varchar(255),
   HOUR int,
   MINUTE int,
   SECOND int
);

現在,我們將使用 INSERT 語句在 SUBSCRIBERS 表中插入 5 條記錄:

INSERT INTO SUBSCRIBERS VALUES
('Rahul', 'Premium', 20, 53, 49),
('Aadhya', 'Basic', 10, 13, 19),
('Nikhil', 'Moderate', 05, 43, 20),
('Maaya', 'Basic', 16, 36, 39),
('Varshu', 'Premium', 12, 45, 45);

執行以下查詢以獲取在上面建立的表中插入的所有記錄:

Select * From SUBSCRIBERS;

以下是 SUBSCRIBERS 表:

SUBSCRIBERNAME PACKAGENAME HOUR MINUTE SECOND
Rahul Premium 20 53 49
Aadhya Basic 10 13 19
Nikhil Moderate 5 43 20
Maaya Basic 16 36 39
Varshu Premium 12 45 45

在這裡,我們使用 MySQL MAKETIME() 函式將“Hour”、“Minute”和“Second”列的值組合起來,以表示訂閱時間:

SELECT SubscriberName, PackageName, MAKETIME(Hour, Minute, Second)
As SubscriptionTime FROM SUBSCRIBERS;

輸出

輸出顯示如下:

SUBSCRIBERNAME PACKAGENAME SubscriptionTime
Rahul Premium 20:53:49
Aadhya Basic 10:13:19
Nikhil Moderate 05:43:20
Maaya Basic 16:36:39
Varshu Premium 12:45:45
廣告