У меня есть таблица со столбцом, в котором хранятся блоки времени, разделенные полуколонами (;
). Я хотел бы создать строку для каждого временного блока, например, приСоздайте повторяющуюся строку для каждого элемента в столбце, содержащем строку с разделителями
Я хотел бы создать строку для каждого временного блока
Пожалуйста, дайте мне знать, если это возможно в Access.
Редактировать
Я попытался с помощью Этот запрос
SELECT * INTO ImportedData
FROM (
SELECT [SourceData].[Time block], [SourceData].[Work History Id],[SourceData].[Operation Code]
FROM SourceData
WHERE InStr([SourceData].[Time block], ';') = 0
UNION ALL
SELECT Left([SourceData].[Time block], InStr([SourceData].[Time block], ';') - 1),[SourceData].[Work History Id], [SourceData].[Operation Code]
FROM SourceData
WHERE InStr([SourceData].[Time block], ';') > 0
UNION ALL
SELECT Mid([SourceData].[Time block], InStr([SourceData].[Time block], ';') + 1), [SourceData].[Work History Id], [SourceData].[Operation Code]
FROM SourceData
WHERE InStr([SourceData].[Time block], ';') > 0) AS CleanedUp;
и я также попробовал этот код VBA не повезло.
Public Sub addToTable()
Dim rstObj As DAO.Recordset, dbObj As DAO.Database
Dim InsertSQL As String
Set dbObj = CurrentDb()
Set rstObj = dbObj.OpenRecordset("Query1")
Do While Not rstObj.EOF
Dim memArr() As String
memArr = Split(rstObj.Fields("Time block"), ",")
For i = 0 To UBound(memArr)
InsertSQL = "SELECT*INTO ImportedData(Time block, Work History ID) VALUES(""" & rstObj.Fields("Time block") & """, """ & memArr(i) & """)"
DoCmd.RunSQL (InsertSQL)
Next
rstObj.MoveNext
Loop
End Sub
Почему этот вопрос был отмечен? – user3667159
«Почему этот вопрос был отмечен?» - Возможно, потому что вы спросили: «Возможно ли это?» вопрос, не давая никаких указаний на то, что вы исследовали или что вы пробовали сами. Взгляните на [этот ответ на Meta] (http://meta.stackoverflow.com/a/269359/2144390). –
Я прошу прощения за надзор, я пробовал разные подходы по запросу, и пока это работает нормально, предоставленный sql не работает правильно, потому что он вставляет пустые записи или иногда не разбивает строку правильно, любая помощь будет быть высоко оцененным – user3667159