Crystal Reports记录选择

时间:2017-03-27 17:24:52

标签: crystal-reports

Crystal Reports中有没有办法根据数据集的多行选择正确的记录?

我有一个链接到地址表的联系人表。在地址表中有一个定义地址类型的字段。地址表可能包含同一联系人的多个地址,可能是商业,住宅或邮寄地址的类型。

选择我的数据集时,我会提取多条记录,但我的报告只需要一条记录。如何根据哪些记录选择适当的地址记录?例如,如果商业地址在那里我想要那个,如果不是我想要邮寄,如果没有我想要回家。

我需要在Crystal Reports中过滤这些记录,除非我可以修改sql select。

The output of the sql looks like this:
ABC Company, Main Street, Location
ABC Company, First Street, Mailing
ABC Company, Second Street, Business

1 个答案:

答案 0 :(得分:0)

您的问题应该包括一些相关数据,表格架构和所需的输出。以下内容可以帮助您入门。

SELECT C.ContactId, C.ContactName
    COALESCE(BA.Address, MA.Address, HA.Address) AS Address
FROM Contact C
    LEFT JOIN Address BA ON BA.ContactId = BA.ContactId AND BA.AddressTypeId = 1 -- your business address type
    LEFT JOIN Address MA ON MA.ContactId = MA.ContactId AND MA.AddressTypeId = 2 -- your mail address type
    LEFT JOIN Address HA ON HA.ContactId = HA .ContactId AND HA .AddressTypeId = 3 -- your home address type