Hướng dẫn mysql timestamp where clause - dấu thời gian mysql mệnh đề where

Xin chào, tôi có một bảng trong 2 hồ sơ sau:

descript | start                | end
test 1   | 2011-07-18 14:30:00  | 2011-07-18 17:00:00
test 2   | 2011-07-18 00:00:00  | 2011-07-19 00:00:00

Khi tôi cố gắng chọn, dường như tôi không thể lấy kết quả thứ 2 (thử nghiệm 2) có vẻ như rõ ràng là ngày 19 tháng 7.

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";

Sẽ đánh giá cao bất kỳ lời khuyên.

hỏi ngày 22 tháng 7 năm 2011 lúc 8:25Jul 22, 2011 at 8:25Jul 22, 2011 at 8:25

Hướng dẫn mysql timestamp where clause - dấu thời gian mysql mệnh đề where

2

"2011-07-19 00:00:00" nhiều hơn "2011-07-18 23:59:59"MORE than "2011-07-18 23:59:59"MORE than "2011-07-18 23:59:59"

Theo điều kiện của bạn, nó sẽ ít hơn, vì vậy truy vấn của bạn không khớp với

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
3.

Truy vấn

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
4 của bạn phải là:
SELECT * FROM event 
WHERE start >= "2011-07-18 00:00:00" 
AND end <= "2011-07-19 00:00:00"; 

Đã trả lời ngày 22 tháng 7 năm 2011 lúc 8:27Jul 22, 2011 at 8:27Jul 22, 2011 at 8:27

NemodennemodenNemodenNemoden

8,5366 Huy hiệu vàng40 Huy hiệu bạc65 Huy hiệu Đồng6 gold badges40 silver badges65 bronze badges6 gold badges40 silver badges65 bronze badges

1

Bạn chỉ có thể làm điều này :)

SELECT * FROM event
WHERE start BETWEEN '2011-07-18 00:00:00' AND '2011-07-19 00:00:00' 
AND end BETWEEN '2011-07-18 00:00:00' AND '2011-07-19 00:00:00'

Điều này dẫn đến thời gian ở giữa phạm vi bạn đã chỉ định cho bắt đầu và kết thúc

Đã trả lời ngày 22 tháng 7 năm 2011 lúc 13:03Jul 22, 2011 at 13:03Jul 22, 2011 at 13:03

bash-bash-bash-bash-

5.96410 Huy hiệu vàng41 Huy hiệu bạc51 Huy hiệu Đồng10 gold badges41 silver badges51 bronze badges10 gold badges41 silver badges51 bronze badges

bạn chỉ cần loại trừ cột

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
5, như
SELECT * FROM event 
WHERE start>="2011-07-18 00:00:00" AND start<="2011-07-18 23:59:59";

Đã trả lời ngày 22 tháng 7 năm 2011 lúc 10:36Jul 22, 2011 at 10:36Jul 22, 2011 at 10:36

Ajrealajrealajrealajreal

46.2K10 Huy hiệu vàng86 Huy hiệu bạc119 Huy hiệu đồng10 gold badges86 silver badges119 bronze badges10 gold badges86 silver badges119 bronze badges

MySQL có các chức năng sau để có được ngày và giờ hiện tại:

SELECT now();  -- date and time
SELECT curdate(); --date
SELECT curtime(); --time in 24-hour format

Để tìm các hàng giữa hai ngày hoặc dấu thời gian:

SELECT *
FROM events
where event_date between '2018-01-01' and '2018-01-31';

-- Can include time by specifying in YYYY-MM-DD hh:mm:ss format:
SELECT *
FROM events
WHERE event_date BETWEEN '2018-01-01 12:00:00' AND '2018-01-01 23:30:00';

Để tìm các hàng được tạo trong tuần trước:

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
0

Ngoài ra còn có

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
6. Ví dụ: để tìm các sự kiện được lên lịch từ một tuần trước đến 3 ngày kể từ bây giờ:
SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
2

Bạn có thể trích xuất một phần của dấu thời gian bằng cách áp dụng chức năng tương ứng:

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
3

Để có được một ngày trong tuần từ dấu thời gian, hãy sử dụng hàm

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
7:
SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
0

Để chuyển đổi dấu thời gian thành dấu thời gian unix (giây số nguyên):

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
1

Để tính toán sự khác biệt giữa hai dấu thời gian, hãy chuyển chúng thành dấu thời gian UNIX sau đó thực hiện phép trừ:

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
2

Lưu ý rằng MySQL cũng có hàm

SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
8 và
SELECT * FROM event WHERE start >= "2011-07-18 00:00:00" AND end <= "2011-07-18 23:59:59";
9, nhưng chúng chỉ có thể được sử dụng với các giá trị ngày hoàn toàn hoặc giá trị thời gian hoàn toàn, tương ứng.

MySQL Store DateTime như thế nào?

MySQL truy xuất và hiển thị các giá trị DateTime trong định dạng 'yyyy-mm-dd hh: mm: ss'.Phạm vi được hỗ trợ là '1000-01-01 00:00:00' đến '9999-12-31 23:59:59'.Kiểu dữ liệu dấu thời gian được sử dụng cho các giá trị có chứa cả phần ngày và thời gian.Dấu thời gian có phạm vi '1970-01-01 00:00:01' UTC đến '2038-01-19 03:14:07' UTC.YYYY-MM-DD hh:mm:ss ' format. The supported range is '1000-01-01 00:00:00' to '9999-12-31 23:59:59' . The TIMESTAMP data type is used for values that contain both date and time parts. TIMESTAMP has a range of '1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC.YYYY-MM-DD hh:mm:ss ' format. The supported range is '1000-01-01 00:00:00' to '9999-12-31 23:59:59' . The TIMESTAMP data type is used for values that contain both date and time parts. TIMESTAMP has a range of '1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC.

Làm thế nào để tôi chèn ngày trong yyyy

Bạn có thể sử dụng str_to_date để chuyển đổi chuỗi ngày sang định dạng ngày nội bộ của MySQL để chèn.use str_to_date to convert a date string to MySQL's internal date format for inserting.use str_to_date to convert a date string to MySQL's internal date format for inserting.

Làm cách nào để viết dấu thời gian trong truy vấn SQL?

Cú pháp cơ bản của kiểu dữ liệu của Time TimeStamp trong SQL như sau: Timestamp 'DATE_EXPRESSETY Time_Expression';Biểu thức dữ liệu dấu thời gian hợp lệ bao gồm một ngày và thời gian, theo sau là BC hoặc AD tùy chọn.Timestamp 'date_expression time_expression'; A valid timestamp data expression consists of a date and a time, followed by an optional BC or AD.Timestamp 'date_expression time_expression'; A valid timestamp data expression consists of a date and a time, followed by an optional BC or AD.

Loại dữ liệu ngày hỗ trợ MySQL?

Có nhiều loại dữ liệu khác nhau được hỗ trợ trong MySQL.Trong số đó đôi khi chúng ta cần lấy kiểu dữ liệu ngày để lưu trữ các giá trị dữ liệu.Loại ngày được sử dụng cho các giá trị với phần ngày nhưng không có phần thời gian.Nó hiển thị các giá trị ngày ở định dạng 'yyyy-mm-dd'.