我正在尝试解决一个复杂的情况,但是我的 SQL 和 LINQ 技能充其量只是中等水平,我不知道如何实现这一点。我可以用多个查询来做到这一点,但我很想知道我是否可以用一个来做到这一点。
我Pricing
在 SQL 中有一个表。我关心的三个字段是SearchCodeGUID
、LocationGUID
和ClientGUID
。Location 和 Client 都可以为空。
执行查询时,我有一个 SearchGUID、一个 StateGUID、一个 CountyGUID 和一个 ClientGUID。以下是我要执行的查询。对于所有这些,我想要 where SearchGUID = SearchGUID
。操作顺序如下:
首先,我想检查客户是否有县的价格 - 地点ClientGUID = ClientGUID
和LocationGUID = CountyGUID
如果那不存在,我想看看是否只有那个县的记录 - 在哪里LocationGUID = CountyGUID
如果那不存在,我想看看是否有该州的记录-在哪里LocationGUID = StateGUID
最后,如果不存在,我只想要记录 where LocationGUID
andClientGUID
为 null 和SearchGUID
匹配项。