• NOLOCK - Implements dirty read, or isolation level 0 locking, which means that no shared locks are issued and no exclusive locks are honored. When this option is set, it is possible to read uncommitted or dirty data; values in the data can be changed and rows can appear or disappear in the data set before the end of the transaction

    So if you can live with missing data, incorrect data, duplicated data, go ahead and use NOLOCK, if not then dont use it.