Tôi chưa tìm thấy cách nào để thực hiện công đoàn với DBIx::Class ngoài việc sử dụng chế độ xem và viết SQL theo cách thủ công. Điều này có vẻ lạ đối với tôi. Tôi cảm thấy như cần có một số cách để kết hợp hai ResultSets mà không cần nhiều công việc phụ vì việc cộng và trừ là một phần cốt lõi của SQL. Có cách nào dễ dàng hơn để làm công đoàn không? Nếu không, tai sao không?DBIx :: Lớp có làm công đoàn không?
8
A
Trả lời
13
DBIx::Class::Helper::ResultSet::SetOperations
my $rs1 = $rs->search({ foo => 'bar' });
my $rs2 = $rs->search({ baz => 'biff' });
for ($rs1->union($rs2)->all) { ... }
0
Là một workaround (mà không cần phải nạp nhiều module) Tôi đã làm một cái gì đó như thế này:
$db->resultset("Foo")->search({ -or => [
'me.id' => { -in => $result_set_a },
'me.id' => { -in => $result_set_b }
]
},
undef);
Các vấn đề liên quan
- 1. Có thể làm công đoàn trong LINQ không?
- 2. Có thể DBIx :: Lớp được sử dụng để tạo bảng?
- 3. Công đoàn ẩn danh và một công đoàn bình thường
- 4. Cách sử dụng của công đoàn trong một lớp
- 5. C++ 11 "Trong lớp khởi tạo" tính năng này không làm việc cho công đoàn
- 6. Cách khởi tạo công đoàn?
- 7. Chèn vào với công đoàn
- 8. Đoàn đến lớp chị em
- 9. Đối với công đoàn hoặc công đoàn tất cả, đó là câu hỏi
- 10. các lớp, cấu trúc, công đoàn và enums rỗng không được gắn thẻ ẩn danh
- 11. Công đoàn phù hợp trong C++ 11
- 12. TSQL - Tổng số truy vấn công đoàn
- 13. Tại sao việc căn chỉnh thành viên công đoàn dài dài lớn hơn công đoàn/cấu trúc có chứa? Điều này có đúng không?
- 14. Công đoàn trong khuôn khổ pháp nhân
- 15. C++: công đoàn với phương pháp?
- 16. Các công đoàn có thể phân biệt đối xử có liên quan đến nhau không?
- 17. công đoàn không thể chứa một đối tượng mà có chức năng ảo
- 18. Công đoàn/cấu trúc ẩn danh của lớp với hàm tạo
- 19. Tôi có thể khởi tạo một công đoàn trong bộ khởi tạo mem không?
- 20. DBIx :: Class dụ
- 21. Có cách nào để truy cập các bit riêng lẻ bằng công đoàn không?
- 22. Tôi có thể in DBIx như thế nào :: Kết quả lớp học?
- 23. Có hợp lệ để sử dụng các trường bit với công đoàn không?
- 24. Có thể đặt một số vật thể với nhau trong một công đoàn không?
- 25. Công đoàn có thể được khởi tạo trong tuyên bố không?
- 26. C++: Nghiêm ngặt răng cưa và lạm dụng công đoàn
- 27. array_replace() vs điều hành công đoàn trong PHP
- 28. xpath 'hoặc' hành xử như công đoàn ('|') với xmllib2
- 29. DBIx và thừa kế trong Perl
- 30. In ấn F # công đoàn phân biệt đối xử