У меня есть таблица с котировкой акциямиSQL Server котировка каждого второго
Символа
Задать
Bid
QuoteDateTime
Использования SQL Server 2008, позволяет сказать, что для любого 60-секундного периода времени я хочу для выбора котировок на всех символах, чтобы в течение этого периода была запись за каждую секунду.
Проблема не в том, что каждый символ имеет одинаковое количество котировок - так что есть несколько секунд, у которых нет кавычек для любого данного символа. Поэтому я хочу заполнить недостающие данные. Поэтому, если ORCL имеет котировки во втором 1, 2, 3, 5, 7, я хочу, чтобы результирующий набор имел 1,2,3,4,5,6,7 ... до 60 секунд (охватывающий всю минуту) , Значения в строке 4 взяты из строки 3
В этом случае я хотел бы выбрать предыдущую цитату и использовать ее для этой второй секунды. Таким образом, для каждого символа есть непрерывные записи, и для каждого символа выбирается одинаковое количество записей.
Я не уверен, что это называется в SQL сервере, но любая помощь строит запрос, чтобы сделать это было бы здорово
Для вывода Я ожидаю, что для любого заданного периода времени 60 сек. Для тех символов, которые имеют запись в 60 секунд, будет 60 записей для каждого символа, один для каждого второго
Symbol Ask Bid QuoteDateTime
MSFT 26.00 27.00 2010-05-20 06:28:00
MSFT 26,01 27,02 2010-05-20 06:28:01
...
ORCL 26,00 27,00 2010-05-20 06:28:00
ORCL 26,01 27,02 2010-05-20 06:28:01
и т.д.
Какова точность вашего формата времени? например все значения будут равняться круглым секундам, таким как '2010-09-16 14: 59: 57.000'. Если вторая секунда может быть больше одной записи за акцию в секунду? –
Можете ли вы привести примерный пример вывода? Это может помочь уточнить, что вы ожидаете. По крайней мере, я нахожу ваше объяснение немного запутанным. – InSane
Точность в миллисекундах, как 2010-05-20 06: 28: 07.850, но я собирался сделать группу на втором, гарантируя, что есть только одна запись в секунду, если она существует – chrisg