I have a column in my database that is a int(11)
That column's an integer. At the storage level, the "11" doesn't mean a thing.
Imagine that you have a large table of user names, and somebody tries to enter 'John Smith' for the 40th time. What do you want to do? Do you want somebody to compare it to all the other variants? Do you want to identify and review variant spellings, like 'Johnathan', 'Jonathon', 'John', and 'Jhon'? Big decisions, but they don't affect how to handle id numbers that need to be reviewed.
To identify rows that need to be reviewed, for whatever reason, you're far better off putting their keys into another table.
create table review_sets (
set_id integer not null,
set_created timestamp not null default now(),
rationale varchar(100) not null default 'Duplicate of existing user?',
primary key (set_id),
unique (set_created)
);
create table review_ids (
set_id integer not null,
user_id integer not null,
primary key (set_id, user_id),
foreign key (set_id) references review_sets (set_id),
foreign key (user_id) references users (user_id) -- Not shown.
);
The column review_sets.rationale lets you use distinguish spelling issues from, say, late payments or site abuse. The table of review_ids lets you limit the ids to a few variations rather than all possible variations. (But I'm not sure how useful that might be.)
You might want to add columns that identify the reviewer, the time the review was completed, and the decision reached by that reviewer. Depending on your application, you might be able to just delete rows after you've reached a decision.