I have a threading question.

Let say I have a single core processor and a single threaded program and the same program multithreaded.

Can I safely assume that in a single processor systems a single threaded program will run much better than a multithreaded program in cases when the threads is continuously doing some work and not waiting or sleeping?

Also for a multi core processors systems will it change? Since its a multithreaded program and not multi process program. Can threads from same process utilize the multiprocessors of the system or they will run in the same processor? If they run in the same processor then above answer will satisfy this question

This question came to my mind when I was working with mysql. In mysql there is a single process and multiple threads for each connection, right?
If that is the case then in single processors system, If I run 2 queries simultaneously, then it will take more time than running the 2 queries one after the other?