Unexpected Row of Data when Joining two tables
You need to use LEFT (outer) join. Try this:

SELECT  
  a.Article,
  COALESCE(b.ID, 0) AS ID,
  a.Misc,
  b.Misc2
FROM 
  [table] a
    LEFT JOIN 
        [table] b
    ON
        b.article =  a.article ;


You may want to use COALESCE(b.ID, a.ID) instead of COALESCE(b.ID, 0), depending on what you want to show (a.ID or always 0) for articles that appear in a but not b.

Tested in: dbfiddle.uk
(test kindly provided by @McNets)