"Apart from that there're some short way of writing things like instead of listing SET foo='bar' in UPDATE query you can use (bar) VALUES ('foo')."
Are you sure you can do that?
"Don't avoid using multiple queries, you can store result of first query in a string and use it on the next one or so. That way you might even increase performance with less joining tables."
I'd also disagree with that, much better to use joins than do this sort of thing in the application processing.
A query should be as long as it needs to be, if thats 100 lines long so be it. That's not to say SQL should be complicated, in many cases re-evaluating your SQL should highlight areas where things can be made more efficient.
Andrew Gilfrin
------------------
http://gilfster.blogspot.com
My MySQL related Blog
http://www.mysqldevelopment.com
MySQL Stored Procedure,Trigger, View.... (Just about most things these days) Information