Select records as groups based on sequence and date I have data stored as:

CompID  | Seq | Udate     | Utime
--------+-----+-----------+-------
mx433   | 1   | 1/1/2012  | 13:54
mx433   | 1   | 1/2/2012  | 13:43
mx433   | 2   | 1/4/2012  | 14:23
mx433   | 3   | 12/1/2013 | 13:54


I want to archive the data based on older than 1 year, however I want to keep the last set of records for every company based on the highest sequence number. I can't come up with a SQL statement to select this in order to move to another table.
Simple approach (can split sets)
Chain DELETE and INSERT with a data-modifying CTE for best performance and to be safe:
WITH del AS (
   DELETE FROM tbl t
   WHERE  udate &lt; (now() - interval '1 year')::date
   AND    EXISTS (  -- is not the greatest
      SELECT 1 FROM tbl
      WHERE  compid = t.compid
      AND    seq    &gt; t.seq
   RETURNING compid, seq, udate, utime
   )
INSERT INTO archive(compid, seq, udate, utime)
SELECT * FROM del;

This is assuming all columns to be defined NOT NULL (table definition is missing).
Depending on data distribution, there may be faster solutions.
I formulated the predicate Udate &lt; (now() - interval '1 year')::date to be sargable. You should have an index on Udate (at least).
Ignoring Utime. You should replace date and time with a single timestamp column: udatetime timestamp. Smaller, more efficient.
Avoid splitting sets
To keep rows older than a year if at least 1 row in the same set (compid, seq) is still younger than a year:
WITH del AS (
   DELETE FROM tbl t
   USING (
      SELECT compid, seq
      FROM   tbl d
      GROUP  BY 1,2
      HAVING max(udate) &lt; (now() - interval '1 year')::date
      AND    EXISTS (  -- is not greatest seq
         SELECT 1 FROM tbl
         WHERE  compid = d.compid
         AND    seq    &gt; d.seq
         )
      ) d
   WHERE  t.compid = d.compid
   AND    t.seq    = d.seq
   RETURNING t.compID, t.seq, t.udate, t.utime
   )
INSERT INTO archive(compid, seq, udate, utime)
SELECT * FROM del;

This first groups by compid, seq and checks if the maximum date in the group is old enough to be moved.
SQL Fiddle.