0

私は次のような列の「日時」を持っています:2012-06-04 15:40:20

前回のデータを取得するクエリをDoctrineで作成したい。未満2012-06-04 15:40:20。Doctrineでそれをどのように実現できますか。

申し訳ありませんが、私には手がかりがありません。


私はDoctrineに精通していませんが、これがあなたが望むことをするための標準SQLです:

select *
from t
where t.datetime in (select max(datetime)
                     from t
                     where datetime < '2012-06-04 15:40:20'
                    )

Doctrineが標準のSQL構文をサポートしている場合、このようなものが機能します(日付/時定数を別の方法で入力する必要がある場合があります)。

4

2 に答える 2

1

私があなたの質問を正しく理解していれば、構文は次のようになっていると思います。

$datetime = // your timestamp

->where('t.somefield < ?', date('Y-m-d H:i:s', strtotime($datetime))
于 2012-06-05T10:21:04.583 に答える
0

私は Doctrine に精通していませんが、標準 SQL を使用して、必要なことを行うことができます。

select *
from t
where t.datetime in (select max(datetime)
                     from t
                     where datetime < '2012-06-04 15:40:20'
                    )

Doctrine が標準の SQL 構文をサポートしている場合、このようなものが機能します (別の方法で日付/時刻定数を入力する必要があるかもしれません)。

于 2012-06-04T17:34:20.523 に答える