is it possible to do a reverse pattern search in a database?
This is what I can come up with (untested).

You have to be able to tell the server that you're searching for "AB" and "ED" separately - otherwise you will get a very large number of possible combinations very quickly.

SELECT t1.*, t2.* 
FROM table1 t1, table2 t2
WHERE t1.t1_field LIKE '%AB%' 
OR t1.t2_field LIKE '%ED%'.


If you require different substring sets per substring, then you will have to use your programming environment (PHP, Java, &amp;c.) to split the main input search string ("ADED") into its components.

[EDIT - in reponse to the OP]

Are these random values or do you have a (limited) specific list? If you have more than ~ 25, then I suggest you go with your programming environment, otherwise the SQL will become very messy. 

Just a thought, if you have a limited number of these substrings (at a specific part of the field - i.e. 3 characters in? Or similar), you could create a joining table with the substring and the PRIMARY KEY of the main table to get your lookups done faster.

Are these codes you are decomposing? We really need to see the entire scope of your data to get an idea of what would be the best solution.