Looking at the following SQL fiddle: http://sqlfiddle.com/#!2/962496/1
How could one select all orders from user b@b.cn with userpk = 2 and reg = 1 but only
the two most recent orders from a@a.cn with userpk = 1 and reg = 0. So the query will show 3 orders for userpk = 2 but only 2 orders (not the earliest order 2012-01-01 from userpk = 1
So the condition would be reg, if reg = 0 then ignore first order
I think this will give you the result that you want:
See SQL Fiddle with Demo
A version not specific to single users (if you have more than 2 users):
See SQL Fiddle with Demo