In Postgres I would use a VALUES expression to form a derived table:
To just select:
SELECT *
FROM   my_table m
JOIN  (
   VALUES
     ('5eaf5d368141560012161636', 'A')
   , ('5e79d03e9abae00012ffdbb3', 'B')
   , ('5e7b501e9abae00012ffdbd6', 'C')
   , ('5e7b5b199abae00012ffdbde', 'D')
   , ('5e7c817c9ca5540012ea6cba', 'E')
   ) u(updated_by, new_value) USING (updated_by);
Or LEFT JOIN to include rows without replacement.
You may need explicit type casts with non-default data types. See:
For repeated use, create a persisted translation table.
CREATE TABLE updated_by_translation (updated_by text PRIMARY KEY, new_value text);
INSERT INTO my_table
VALUES
  ('5eaf5d368141560012161636', 'A')
, ('5e79d03e9abae00012ffdbb3', 'B')
, ('5e7b501e9abae00012ffdbd6', 'C')
, ('5e7b5b199abae00012ffdbde', 'D')
, ('5e7c817c9ca5540012ea6cba', 'E')
;
Data types and constraints according to your actual use case.
SELECT *
FROM   my_table m
LEFT   JOIN updated_by_translation u USING (updated_by);
MySQL recently added a VALUES statement, too. The manual:
VALUES is a DML statement introduced in MySQL 8.0.19
But it requires the keyword ROW for every row. So:
...
   VALUES
     ROW('5eaf5d368141560012161636', 'A')
   , ROW('5e79d03e9abae00012ffdbb3', 'B')
   , ROW('5e7b501e9abae00012ffdbd6', 'C')
   , ROW('5e7b5b199abae00012ffdbde', 'D')
   , ROW('5e7c817c9ca5540012ea6cba', 'E')
...