Here's a tidbit from data geeks:
NEVER BUILD INTELLIGENCE INTO YOUR DATA!!
Cute ID schemes like APT201 or HSE234 are what is being described. You've loaded intelligence into the data instead of capturing different data elements in a database.
Rather than
Building
ID: APT123
USE
BUILDING
Type: APT
Number: 123
You can concat these fields easily for printing and display purposes
So instead of a nice simple query like
SELECT Type, MAX(number) FROM building GROUP BY type
You're stuck doing:
SELECT concat(substring(id,0,3), max(substring(id, 4))))
FROM building
GROUP BY substring(id,0,3)