У меня есть две таблицы базы данных Microsoft Access. Они называются Historical_Stock_Prices
и Balance_Sheets
. Мне нужно объединить данные из каждой из этих таблиц, чтобы создать таблицу с именем Daily
. Мне нужно взять поля Ticker
, [Date]
и [Close]
от Historical_Stock_Prices
и мне нужно снять поле Common_Stocks
от Balance_Sheets
.MS Access SQL Select Statement из двух таблиц
Я не буду брать каждый ряд из Historical_Stock_Prices
и Balance_Sheets
. Я буду брать строки, которые находятся или до даты, выбранной в DateTimePicker
с именем dtpDateSelection
.
Теперь основная проблема, что у меня есть, заключается в том, что Historical_Stock_Prices
содержит строку для каждого дня. Пока Balance_Sheets
содержит строку за каждый квартал. Так что за каждый день за квартал фигура Common_Stocks
фигура, которая исходит от Balance_Sheet
, будет такой же.
Как это сделать?
Вот код, который я до сих пор:
Dim Date1 As Date = dtpDateSelection.Value
Dim cmd As OleDbCommand = New OleDbCommand("CREATE PROC Daily AS SELECT Ticker, [Date], [Close] From Historical_Stock_Prices WHERE [Date] = " & Date1 & "", con)
cmd.ExecuteNonQuery()
Это, очевидно, не включает в себя таблицу Balance_Sheet
вообще. Кроме того, в настоящее время мой оператор where выдает ошибку.
Дополнительная информация: Таблица Schema
Как связаны Historical_Stock_Prices и Balance_Sheets? У них есть первичный/внешний ключ? Если у них нет первичного/внешнего ключа, то я предполагаю, что они связаны через поле Quarter and Year. – Linger
@Linger Они не связаны. Я не уверен, что лучший способ связать их. 'Historical_Stock_Prices' имеет первичный ключ из двух полей. Это «Тикер» и «Дата». 'Balance_Sheets' имеет первичный ключ из трех полей. Это «Тикер», «Год» и «Период». – gromit1