从查询MySQL获取Concat函数中的本地化月份名称

时间:2014-07-24 11:42:56

标签: mysql date zend-date

在db表'项目'我有一个专栏' date' (输入日期)。在我的查询中,我想从包含此日期列的几列构建一个字符串,但我希望日期显示为月份名称并同时在字符串中本地化。因此,如果日期是1-1-2014,我想在第1栏Janvier'中找到一些文字。或者&1;第1栏和第1栏中的一些文字。在mystring中取决于语言环境fr或en等。

这就是我在我的模型中所拥有的:

$select = $this->select()
->from('items', array(items.".*" , 'mystring'=>new Zend_Db_Expr('CONCAT('column1', 
'month'=> new Zend_Db_Expr('date->get(Zend_Date::MONTH_NAME)'))  
->where('somecondition = true');

这给我一个SQL语法错误。 我知道SQL有MONTHNAME,但它没有本地化,只返回英文。

是否可以从SQL查询中的日期列获取Zend_Date的本地化月份名称?

1 个答案:

答案 0 :(得分:2)

我不知道Zend_Date,但是从MySql 5.0.25开始,您可以将 lc_time_names 设置为您的语言,为您提供day and month names in your language

SET lc_time_names = 'fr_FR'