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

各顧客の最新のレコードを取得する

    ;WITH x AS 
    (
        SELECT ID, NAME, [DATE], 
          rn = ROW_NUMBER() OVER 
          (PARTITION BY NAME ORDER BY [DATE] DESC)
        FROM @TESTABLE
    )
    SELECT ID, NAME, [DATE] FROM x WHERE rn = 1
      ORDER BY [DATE] DESC;
    

    [DATE] のような予約語 (およびあいまいな列名) を避けるようにしてください ...



    1. SELECT*FROM複数のテーブル。 MySQL

    2. MySQLは、ON DELETE SET NULLで列を拒否しますが、ONDELETECASCADEでは拒否しません

    3. RailsPostgresqlの複数のスキーマと同じテーブル名

    4. mysqlの複数のフィールドに対して加重検索を行うための最良の方法は?