sql >> データベース >  >> RDS >> Sqlserver

結合とグループ化を使用したSQLクエリと

    これはサンプルです。この場合、サブクエリ(joinステートメントまたはメインのselectステートメントの例:

    )で各列の値を取得する必要があります。
    inner join (
            select distinct bartar_patientname
                    ,(select top 1 bartar_pastePerMonth from [Bartar_MSCRM].[dbo].[Filteredbartar_callcenterreport] c2 where c2.bartar_patientname = cte.bartar_patientname and c2.bartar_pastePerMonth is not null order by c2.bartar_date desc) as bartar_date
                    ,(select top 1 bartar_acc           from [Bartar_MSCRM].[dbo].[Filteredbartar_callcenterreport] c2 where c2.bartar_patientname = cte.bartar_patientname and c2.bartar_acc is not null order by c2.bartar_date desc) as bartar_acc
                    ,(select top 1 bartar_insuranceinfo from [Bartar_MSCRM].[dbo].[Filteredbartar_callcenterreport] c2 where c2.bartar_patientname = cte.bartar_patientname and c2.bartar_insuranceinfo is not null order by c2.bartar_date desc) as bartar_insuranceinfo
                    ,(select top 1 bartar_brand         from [Bartar_MSCRM].[dbo].[Filteredbartar_callcenterreport] c2 where c2.bartar_patientname = cte.bartar_patientname and c2.bartar_brand is not null order by c2.bartar_date desc) as bartar_brand
            from [Bartar_MSCRM].[dbo].[Filteredbartar_callcenterreport] cte
            ) r
    

    繰り返しますが、これはソリューションのサンプルです。



    1. LEFT(外部)結合を使用する場合、結合内のテーブルの順序は重要ですか?

    2. 一部のテーブルの名前をテーブル名 + DDMMYYYY に変更します

    3. openJPAMySQLを使用したランタイム最適化に関する例外

    4. mysqlselectforeachの後に行を更新します