[英]DBIx::Class: Only select results where has_many greater than zero
[英]Using Perl's DBIx::Class and doing a select where greater than on a column
我正在使用DBIx::Class
模塊,並且正在嘗試執行以下查詢:
SELECT * FROM MyTable WHERE column > TIMESTAMP
我對Perl尤其是DBIx::Class
非常DBIx::Class
所以我真的只知道如何在列等於值的情況下進行基本選擇。 如何使用其他比較器?
DBIx::Class
使用SQL::Abstract
指定其WHERE
子句,因此該模塊的文檔值得閱讀。
您會習慣
$schema->resultset('MyTable')->search({column => 42});
在列中查找具有特定值的記錄。 要使用特定的,不相等的運算符,您將使用包含該運算符和值而不是僅裸值的匿名哈希。 像這樣
$schema->resultset('MyTable')->search({column => { '>' => 42}});
並使用特定的SQL表達式而不是綁定值,您只需傳遞一個引用即可,就像這樣
$schema->resultset('MyTable')->search({timestamp => { '>' => \'TIMESTAMP'}});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.