Tôi có một tập hợp dữ liệu các dự án. Các dự án thay đổi trạng thái từ đầu đến cuối và ngày thay đổi trạng thái được ghi lại trong một bảng (bảng được đặt tên là "sự kiện" - không phải lựa chọn của tôi). Sẽ giống như thế này (được đơn giản hóa):MySQL Điền vào các ngày bị thiếu giữa hai ngày cho một trạng thái đã cho
Date Status
2015-06-01 Start
2015-06-03 Stage 2
2015-06-07 Stage 3
Trong bất kỳ phạm vi ngày nào (được xác định động) Tôi muốn có thể xem dự án nào ở trạng thái nào. Tuy nhiên, bằng cách sử dụng GIỮA hoặc truy vấn khác chống lại dữ liệu sẽ chỉ kéo những dự án có trạng thái thay đổi trong khoảng thời gian đó, không phải các dự án vẫn ở trạng thái đã cho.
Tôi hiện đang tạo ra một giải pháp rất vụng về trong Excel mà các bản sao hàng vào hàng mới giữa ngày thay đổi trạng thái, như vậy:
Date Status
2015-06-01 Project start
2015-06-02 Project start (copied)
2015-06-03 Stage 2
2015-06-04 Stage 2 (copied)
2015-06-05 Stage 2 (copied)
2015-06-06 Stage 2 (copied)
2015-06-07 Stage 3
Giải pháp này cho phép tôi để truy vấn trạng thái cho các dự án trên, nói , 2015-06-06 và thấy rằng nó vẫn còn ở Giai đoạn 2.
Có cách nào tôi có thể sử dụng mySql để kéo dữ liệu này giống nhau không, nhưng là đầu ra cho truy vấn? Tôi đã nghe một số đề nghị sử dụng một bảng Lịch, nhưng tôi không chắc chắn làm thế nào mà sẽ làm việc. Tôi cũng đã nhìn thấy một người nào đó đề nghị một Cross Join, nhưng một lần nữa, tôi không thể hiểu được từ mô tả như thế nào sẽ làm việc.
Cảm ơn trước sự giúp đỡ của bạn!
Cảm ơn, amdixon. Tôi sẽ quay lại khi tôi quay lại văn phòng. Trong khi chờ đợi, tôi sẽ làm việc để tìm hiểu ý nghĩa của nó :) Tôi chưa bao giờ sử dụng Cross Joins trước đây, và tự hỏi những gì họ đã được sử dụng cho. Tôi nghĩ tôi sắp tìm ra. –
tham gia chéo có nghĩa là lấy tất cả các kết hợp của các bản ghi từ bộ dữ liệu trái và phải. vì vậy nếu bạn vượt qua tham gia tập dữ liệu với 2 bản ghi với tập dữ liệu có 5 bản ghi, bạn sẽ kết thúc với tập dữ liệu có 10 bản ghi. kiểm tra [tham gia chéo] (http://www.w3resource.com/sql/joins/cross-join.php). trong bối cảnh này, cách tạo chuỗi số – amdixon
@RyanVincent có, bạn có thể sử dụng dữ liệu này như một nguồn dữ liệu sẵn có (để tạo chuỗi) cho dân số lịch. hiệu quả có lẽ không phải là một mối quan tâm, vì tải lịch sẽ chỉ xảy ra tối đa mỗi năm một lần. chỉ cần đảm bảo không có khoảng trống trong chuỗi id .. – amdixon