0

我想比较 TypoScript 选择中的日期。这是我所拥有的(请注意,我评论了are子句):

lib.my_val = CONTENT
lib.my_val {
  select {
    pidInList = 100000
    max = 1
    #where = effective_date < CURDATE()
    #where = TIMESTAMP(effective_date) < NOW()
    orderBy = effective_date DESC
  }
  table = tx_my_table
  renderObj = COA
  renderObj {
    5 = TEXT
    5{
      field = my_field
      wrap = <span>|</span>
    }
    [...]
  }
}

哪个返回行。

我尝试使用静态日期或变量以任何方式添加where语句......但没有成功。我对where子句的理解,在 SQL 查询中=转储之后的所有内容。但似乎我错过了什么。

基本上我希望 TypoScript 生成一个与此类似的 SQL 查询:

SELECT * FROM tx_my_table WHERE effective_date < NOW() ORDER BY effective_date DESC LIMIT 1;

这应该很简单。过去有没有人这样做过?

谢谢!

4

1 回答 1

3

您的 TypoScript 似乎没问题。

  • 如果将 SQL Query 直接输入 MySQL 会发生什么?
  • 请注意,使用您的代码,只pid=100000选择了一条记录。
  • 你有没有试过这个:

--

lib.my_val {  
       select {  
        pidInList = 100000  
        max = 1  
        where = UNIX_TIMESTAMP(effective_date) < UNIX_TIMESTAMP()  
        orderBy = UNIX_TIMESTAMP(effective_date) DESC  
      }  
      table = tx_my_table  
    }

TYPO3 Wiki 上的选择

于 2012-11-02T18:40:23.780 回答