chúng tôi đang viết một công cụ khoa học với sự hỗ trợ của MySQL. Vấn đề là, chúng ta cần độ chính xác micro giây cho các trường datetime của chúng ta, mà MySQL hiện không hỗ trợ. Tôi thấy ít nhất hai cách giải quyết ở đây:Lưu trữ micro giây trong MySQL: cách giải quyết nào?
- Sử dụng loại thập phân() với phần nguyên tương ứng với giây kể từ thời điểm nào đó (tôi nghi ngờ rằng thời đại UNIX sẽ làm, vì chúng tôi phải lưu trữ số đo được thực hiện Những năm 60 và 50).
- Sử dụng hai cột số nguyên, một cho số giây, cột còn lại tính bằng micro giây.
Truy vấn phổ biến nhất là chọn cột tương ứng với khoảng thời gian (ví dụ: dt_record> time1 và dt_record < time2).
Phương pháp nào trong số những phương pháp này (hoặc một phương pháp khác) có khả năng cung cấp hiệu suất tốt hơn trong trường hợp các bảng lớn (hàng triệu hàng)?
Truy vấn điển hình sẽ yêu cầu độ chính xác ở mức độ nhỏ cho lần bắt đầu, có nghĩa là truy vấn sẽ cần sử dụng hai cột trong mệnh đề where, theo như tôi hiểu sẽ ảnh hưởng đáng kể đến hiệu suất. – dpq