有一个包含数据的表格:
Table name it [was on treatment]
Number_medical_history - short text
ID - counter
datefrom - date
dateto - date
hospital name - short text
查询 1 姓名 - [正在接受治疗查询] 查询 2 名称 - [正在联合治疗查询]
有第一个查询:
SELECT [was on treatment].[Number_medical_history] AS "Number medical history", [was on treatment].datefrom AS datefrom, [was on treatment].dateto AS dateto, [was on treatment].[hospital name] AS "hospital name", "from " & [datefrom] & " " & "to" & " " & [dateto] & " " & "in" & " " & [hospital name] & ";" AS United
FROM [was on treatment]
WHERE ((([was on treatment query].[Number_medical_history])=[Forms]![Forms_1]![Number_medical_history]))
接下来是第二个sql查询:
SELECT [was on treatment query], ConcatRelated("[was on treatment query].United","[was on treatment query]","Id = " & [was on treatment query].[Number_medical_history],"") AS United INTO healing_from_to IN 'C:\AAC\BD\Onlytable.accdb'
FROM [was on treatment query]
WHERE ((([was on treatment query].[Number_medical_history])=[Forms]![Forms_1]![Number_medical_history]))
GROUP BY [was on treatment query].[Number_medical_history];
结果应该是行合并为一,但是我的 SQL 查询有问题,你能帮我吗? 谢谢你。
我尝试首先使用 Number_Medical_History 字段选择必要的数据,将数据合并到一行中。 结果合并数据时,只显示了Number_Medical_History,合并结果的第二个字段没有显示。
事情可能会是这样的:
Select
Id,
[Number_medical_history],
datefrom,
dateto,
[hospital name],
"from " & [datefrom] & " to " & [dateto] & " in " & [hospital name] & ";" AS United
From
[was on treatment]
Where
[Number_medical_history] = [Forms]![Forms_1]![Number_medical_history]
和:
SELECT
RowNumber(CStr([Id]), [Number_medical_history]) AS RowID, *
INTO
healing_from_to IN 'C:\AAC\BD\Onlytable.accdb'
FROM
[was on treatment query]
WHERE
[Number_medical_history] = [Forms]![Forms_1]![Number_medical_history]
AND
(RowNumber("","",True)=0);
使用我在此处找到的
RowNumber
函数以及完整文档:
以及之前发布的这里。
一条SQL语句应该能够完成。
SELECT [Number_medical_history],
First(ConcatRelated("' from ' & [datefrom] & ' to ' & [dateto] & ' in ' & [hospital name]", "[was on treatment]", "Number_medical_history='" & Number_medical_history & "'","",";")) AS United
INTO healing_from_to IN 'C:\AAC\BD\Onlytable.accdb'
FROM [was on treatment]
WHERE [Number_medical_history]=[Forms]![Forms_1]![Number_medical_history]
GROUP BY Number_medical_history;