кодесурса
«MYSQL

Функция MySQL TIMESTAMPDIFF ()

script1adsense2code
script1adsense3code

Функция TIMESTAMPDIFF ()

MySQL TIMESTAMPDIFF () возвращает значение после вычитания выражения datetime из другого.

Нет необходимости, чтобы оба выражения были одного типа. Один может быть датой, а другой датой-временем. Значение даты обрабатывается как дата-время с частью по умолчанию «00: 00: 00». Единица для результата задается другим аргументом.

Единица должна быть одной из следующих: FRAC_SECOND (микросекунды), SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER или YEAR.

Синтаксис:

 TIMESTAMPDIFF (единица измерения, datetime_expr1, datetime_expr2);

Аргументы:

название Описание
datetime_expr1 Выражение даты и времени.
datetime_expr1 Выражение даты и времени.
единица измерения Блок, как описано в описании.

Синтаксическая диаграмма:

«MySQL

Версия MySQL: 5.6


Видео презентация

Иллюстрированная презентация

«Иллюстрированные

Пример:

Следующее утверждение вернет значение в месяцах, вычитая 2009-05-18 из 2009-07-29.

Код:

SELECT TIMESTAMPDIFF(MONTH,'2009-05-18','2009-07-29'); 

Пример вывода:

 mysql> SELECT TIMESTAMPDIFF (MONTH, '2009-05-18', '2009-07-29');
+ ------------------------------------------------ +
| TIMESTAMPDIFF (МЕСЯЦ, '2009-05-18', '2009-07-29') |
+ ------------------------------------------------ +
| 2 | 
+ ------------------------------------------------ +
1 ряд в наборе (0,00 сек)

PHP скрипт

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>example-timestampdiff-function - php mysql examples | w3resource</title>
<meta name="description" content="example-timestampdiff-function - php mysql examples | w3resource">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-12">
<h2>Difference of dates in terms of month between 2009-05-18 and 2009-07-29 : </h2>
<table class='table table-bordered'>
<tr>
<th>Difference in months</th>
</tr>
<?php
$hostname="your_hostname";
$username="your_username";
$password="your_password";
$db = "your_dbname";
$dbh = new PDO("mysql:host=$hostname;dbname=$db", $username, $password);
foreach($dbh->query('SELECT TIMESTAMPDIFF(MONTH,"2009-05-18","2009-07-29")') as $row) {
echo "<tr>";
echo "<td>" . $row['TIMESTAMPDIFF(MONTH,"2009-05-18","2009-07-29")'] . "</td>";
echo "</tr>";
}
?>
</tbody></table>
</div>
</div>
</div>
</body>
</html>

Посмотреть пример в браузере

JSP скрипт

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>example-timestampdiff-function</title>
</head>
<body>
<%
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
String Host ="jdbc:mysql://localhost:3306/w3resour_bookinfo";
Connection connection = null;
Statement statement = null;
ResultSet rs = null;
connection = DriverManager.getConnection(Host, "root", "datasoft123");
statement = connection.createStatement();
String Data ="SELECT TIMESTAMPDIFF(MONTH,'2009-05-18','2009-07-29')";
rs = statement.executeQuery(Data);
%>
<TABLE border="1">
<tr width="10" bgcolor="#9979">
<td>Difference in months</td>
</tr>
<%
while (rs.next()) {
%>
<TR>
<TD><%=rs.getString("TIMESTAMPDIFF(MONTH,'2009-05-18','2009-07-29')")%></TD>
</TR>
<%   }    %>
</table>
<%
rs.close();
statement.close();
connection.close();
} catch (Exception ex) {
out.println("Can’t connect to database.");
}
%>
</body>
</html>

Пример: функция TIMESTAMPDIFF () в МИНУТЕ

Следующее утверждение вернет значение через несколько минут после вычитания 2009-05-18 11:45:42 из 2009-05-20 15:16:39.

Код:

SELECT TIMESTAMPDIFF(MINUTE,'2009-05-18 11:45:42','2009-05-20 15:16:39');

Пример вывода:

 mysql> SELECT TIMESTAMPDIFF (МИНУТА, '2009-05-18 11:45:42', '2009-05-20 15:16:39');
+ ------------------------------------------------- ------------------ +
| TIMESTAMPDIFF (МИНУТА, '2009-05-18 11:45:42', '2009-05-20 15:16:39') |
+ ------------------------------------------------- ------------------ +
| 3090 | 
+ ------------------------------------------------- ------------------ +
1 ряд в наборе (0,00 сек)

PHP скрипт

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>example1-timestampdiff-function - php mysql examples | w3resource</title>
<meta name="description" content="example1-timestampdiff-function - php mysql examples | w3resource">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-12">
<h2>Difference in minutes between 2009-05-18 11:45:42 and 2009-05-20 15:16:39:</h2>
<table class='table table-bordered'>
<tr>
<th>Difference in months</th>
</tr>
<?php
$hostname="your_hostname";
$username="your_username";
$password="your_password";
$db = "your_dbname";
$dbh = new PDO("mysql:host=$hostname;dbname=$db", $username, $password);
foreach($dbh->query('SELECT TIMESTAMPDIFF(MINUTE,"2009-05-18 11:45:42","2009-05-20 15:16:39")') as $row) {
echo "<tr>";
echo "<td>" . $row['TIMESTAMPDIFF(MINUTE,"2009-05-18 11:45:42","2009-05-20 15:16:39")'] . "</td>";
echo "</tr>";
}
?>
</tbody></table>
</div>
</div>
</div>
</body>
</html>

Посмотреть пример в браузере

Все функции даты и времени:

Нажмите здесь, чтобы увидеть функции даты и времени MySQL.

Предыдущая: TIMESTAMPADD ()
Далее: TO_DAYS ()

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code