Within the context of the run of a process, Add Message Id will add such numbers to each record it receives. This is obviously not quite the same thing as a DB sequence number, where the sequence is driven by the entry of data into the table.
As Nick said, some customers add a variable (for example a number value added by Add Number Attribute that is externalized and set at runtime) to the Message Id to make a unique id across runs but this is something of a workaround. Also if you split records within an EDQ process these split records will be derived from the same Message Id so will share it. Finally, there is no cross-run context for message ids, so if the same record is pushed through the process again it may well have a different message id as EDQ simply allocates these in the order in which it processes the records.
EDQ does include a Hash Key Generator processor for where a 'sticky' record identifier that is derived from data is needed.