INSERT INTO A (value1, value2, value3)
SELECT 'foo', 'bar', 'foo' FROM B WHERE ID = 1
Одна потенциальная проблема здесь заключается в том, что если ваше условие будет выполнено более одного раза, оно вставит столько строк, что приспособит ваш запрос к этому, но выполнит то, что вы хотите, вставлять только в том случае, если выполнены условия выбора.