Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cập nhật các hàng trong jOOQ với các phép nối

Có thể bạn đang nghĩ rằng vì không có UpdateJoinStep nhập giống như có một SelectJoinStep rằng không thể sử dụng kết hợp với các bản cập nhật trong jOOQ. Nhưng hãy cẩn thận rằng SelectJoinStep chỉ là sự tiện lợi. JOIN toán tử là một toán tử kết nối hai bảng, không phải là một từ khóa trong SQL. Do đó, jOOQ hỗ trợ nó như một toán tử trên Table loại hình. Sử dụng bản cập nhật SQL của bạn làm ví dụ:

Field<Long> userId = DSL.field("user_nested.id", Long.class);
create
    .update(USER.join(TEAM).on(TEAM.ID.eq(USER.TEAM_ID)))
    .set(USER.NAME, (concat(USER.NAME, "some text")))
    .where(TEAM.STATE.equal("test"))

Bạn có thể chuyển biểu thức bảng trên vào DSLContext.update(Table) giống như bất kỳ khác. Tôi nghi ngờ điều này làm hỏng câu hỏi còn lại của bạn?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhận số lượng hàng phù hợp bằng truy vấn CẬP NHẬT với PHP mysqli

  2. 'LIKE ('% this% 'OR'% that% ') và cái gì đó =else' không hoạt động

  3. JSON_REMOVE () - Xóa dữ liệu khỏi tài liệu JSON trong MySQL

  4. Mysql có thể nhập tệp csv hoặc txt khác vào một cột không?

  5. SQLSTATE [23000]:Vi phạm ràng buộc toàn vẹn:1452 Không thể thêm hoặc cập nhật hàng con:ràng buộc khóa ngoại không thành công