2017-03-20 37 views
0

我注意到這個問題的變種已被問到,但似乎沒有任何工作對我來說(或我看起來不正確)。我仍在學習SQL,請耐心等待。SQL左外部連接,但只拉最大日期

我有兩張表我正在加入。我想要表C中的所有記錄,並且只需要表P中的所有記錄。因此,我假定有一個左外連接?

我想從兩個表中的所有列,他們將通過「PARTNO」表C和「產品編號」表P.被連接

對我來說最棘手的部分是,隨着這一起,我要找以表P中的日期(PDate)爲基礎僅提取最新的「ItemNo」。

在此先感謝!

+0

左連接是你想要的,但你將需要PARTNO子句來連接表下與上表P的子查詢與一組,以獲得表你需要加入。您需要提供更多詳細信息(數據庫類型)等......如果您想要更精確的解決方案。 – ozborn

+0

這些是SQL Server中的兩個表。我正在嘗試使用自定義SQL功能在Tableau Desktop上執行加入 – Rosadocc

+0

我無法在此處訪問SQL Server,但如果您不希望從表中獲取聚合值,則可能需要通過分區進行左連接P. – ozborn

回答

1

這可以與外部進行申請

select * 
    from TableC c 
    outer apply (
     select top 1 * 
      from TableP 
       where itemno = c.partno 
       order by pdate desc 
    ) p 
+0

謝謝!爲我工作很好。 – Rosadocc

+0

@Rosadocc沒問題,很高興它的工作。 – KindaTechy