Can I use difference to collect

Hello, I use continuous query to calculate data every 1 minutes,I use function difference(last()) to calculate the data every minutes, but I find there are some time fields empty during The time interval I select, I find the reason is that the data is is not continuous.The time interval I select is one day, but my data only appear in some particular time periods, so the result I use function difference(last()) is that some particular time the field is empty.
here is my example

select * from min where time > ‘2017-06-16T15:28:00Z’ and symbol = ‘abc’ limit 10
name: min
time close volume
2017-06-16T15:29:00Z 3906 1210
2017-06-19T01:00:00Z 3920
2017-06-19T01:01:00Z 3917 1934
2017-06-19T01:02:00Z 3924 1480
2017-06-19T01:03:00Z 3925 2800
2017-06-19T01:04:00Z 3924 1382
2017-06-19T01:05:00Z 3921 1306
2017-06-19T01:06:00Z 3917 730
2017-06-19T01:07:00Z 3917 590
2017-06-19T01:08:00Z 3919 694

show continuous queries
name: mkt_data
name query
min_event CREATE CONTINUOUS QUERY min_event ON mkt_data RESAMPLE FOR 2m BEGIN SELECT last(last) AS close, difference(last(volume)) AS volume INTO mkt_data.autogen.min FROM mkt_data.autogen.ticks GROUP BY symbol, time(1m) fill(none) END

I want to let these empty time fields have data, I use calculate every 1m. If there is no data before a minute, I want to use the last data before the current minute to replace.
what should I do?

@yqfclid I would start by increasing the RESAMPLE FOR time period to something like 5m or 10m. That way you are much more likely to pull in a value. Does that help with this issue?

Thanks for your response,but I follow your advice and find it can’t help with this issue.