Может ли JOOQ сделать синтаксис "вставить в выбор" для указанных столбцов?Я запускаю несколько разных попыток ..
Таблицы:
table1 (ожидаемая вставка)
<b>id column1 column2 column3 ... timestamp</b>
1 John Leo null 2012/1/28 23:32:23 (Expected insert)
table2
<b>id col1 col2 col3 </b>
101 John xxx xxx (from table2.col1)
102 xxx xxx xxx
table3
<b>
id col1 col2 col3 </b>
101 xxx Leo xxx (from table3.col2)
102 xxx xxx xxx
INSERT INTO table1 ( column1, column2 )
SELECT table2.col1, table3.col2
FROM table2 join table3 t3 on table2.id = table3.id
where table2.id = 101;
Код JOOQ:
create.insertInto(table1, column1, column2 )
.values( create.select( table2.col1, table3.col2 )
.from(table2)
.join(table3)
.on( table12.id.equal(table3.id) )
.where( table2.id.equal(101) ))
.execute(); //.getSQL();
Сообщение об ошибке JOOQ show:
The number of values must match the number of fields
Кто-нибудь знает, какую проблему я создаю и как я могу исправить свой код JOOQ.спасибо, Pay.
Ссылка: Пример: поддержка синтаксиса INSERT SELECT