From the beginning it felt relevant, I encountered Jaywalking multiple times, always knew is wrong but lacked understanding in explaining why, resorting to "it break normalization rules", now I know that it can lead to extremely complicated queries based on that concatenated values very inefficient and cumbersome and maybe field length limitation is not very relevant (as it can be overcome) but it obviously explains why this is an antipattern, was working at an start-up where everything had to be done as fast as possible and only then good and efficient "will refactor later... " and there I've seen this antipattern numerous times, sad that there I couldn't explain its downsides
Next chapter related to tree like data structure in SQL again felt very close to me (also because of start-up work) but this time I kind of did it right with an single table that reference parentId and recursive sql
Chapter related to primary keys was also nice it did not provide some revelations in terms of primary key use but maybe highlighted some truths about it also is very good to remember that compound keys exist
Foreign key chapter was also more like an refresh not even an reminder, maybe I am to young in the industry but I don't think I saw any projects that where deliberately ignoring or ditching FK, maybe this is due the fact that for Java and Spring application (where I mostly work with) industry standard is JPA and its realization Hibernate that enforce this.
Entity Attribute Value chapter where you have an table with (Id, attr_name, attr_value) ex: (1, "name", "Anna"),(1, "surname", "Smith") was also interesting first of all I didn't even realized that this was an option :)), but it quickly explains why this is not an viable option, as with many other antipatterns it simply nullify conventional benefit of DB like constraints and references also lack of standardization different names for same fields are possible like (1, "name", "Anna") and (1, "firstName", "Anna") handling such data would be a nightmare
Chapter 14 about issues when handling NULL values in DB schemes and queries was also pretty good, added a bit more understanding of NULL itself
First half of the book is a gem strait to point with valid antipatterns and logical resolutions, second half feels a bit dragged and in my opinion could be shorter (some chapters could be entirely omitted, Chapter 20)
In general a decent read, 3.5 out of 5
Good to remember
Remember: the foreign key constraint should be defined in the table that is
the “many” side of the one-to-many relationship. (Is logical if you think about)