Hi there,
I will assume that the relationships between entities are already mapped in LLBLGen Designer. A will also assume you are using v3.x. Next time please post these and other relevant information (http://www.llblgen.com/TinyForum/Messages.aspx?ThreadID=7722)
The only thing tricky in your query is that you are filtering on the same entity type but it comes from the result of another relation, that's why you need to alias them. When you do these kind of things you must pass a relationCollection into your GetMulti call and for those relations that could end up with ambiguity you must add an alias for one of them. You also have to specify the alias when you construct the filter (WHERE clause). Read this for more info....
An approximate query would be:
var relations = new RelationCollection();
relations.Add(UserEntity.Relations.RoleEntityUsingCreatedById);
relations.Add(UserEntity.Relations.UserEntityUsingOwnedById, "OwnedBy", JoinHint.Left);
var filter = new PredicateExpression();
filter.Add(UserFields.Name.SetObjectAlias("OwnedBy") % "%test%");
var users = new UserCollection();
users.GetMulti(filter, relations);