您好,我可以帮助我们,我希望按年份和月份将所有相同的日期显示为一个字符串。
<property expression="json-eval(json-eval($.key)" name="isDataFound"
scope="default" type="STRING" xmlns:ns="http://org.apache.synapse/xsd"/>
<filter xmlns:ns="http://org.apache.synapse/xsd" xpath="string-length($ctx:isDataFound)>0">
<then/>
<else/>
</filter>
答案 0 :(得分:0)
连接年份和月份
select CONCAT(year(date_issued), month(date_issued)) as yearmonth from ....
答案 1 :(得分:0)
Query:
SELECT
CONCAT(
CASE MONTH(date_issued)
WHEN 1 THEN 'January'
WHEN 2 THEN 'February'
WHEN 3 THEN 'March'
WHEN 4 THEN 'April'
WHEN 5 THEN 'May'
WHEN 6 THEN 'June'
WHEN 7 THEN 'July'
WHEN 8 THEN 'August'
WHEN 9 THEN 'September'
WHEN 10 THEN 'October'
WHEN 11 THEN 'November'
WHEN 12 THEN 'December'
END
,' ',
YEAR(date_issued)
) AS DATE FROM my_table ORDER BY date_issued ASC
MySQL CONCAT()函数用于添加两个或更多字符串。
•可能有一个或多个参数。 •返回该字符串 连接参数的结果。 •返回非二进制 string,如果所有参数都是非二进制字符串。 •返回二进制文件 string,如果参数包含任何二进制字符串。 •如果参数 是数字,它被转换为其等效的非二进制字符串形式。 • 如果任何参数为NULL,则返回NULL。
来源:http://www.w3resource.com/mysql/string-functions/mysql-concat-function.php
答案 2 :(得分:0)
我们可以进一步简化它,因为mysql具有为我们获取月份名称的功能,并且我一直都在使用它。
SELECT CONCAT_WS(' ', MONTHNAME(date_issued), YEAR(date_issued)) from your_table;
WS
部分仅表示分隔符,因此我们可以将连接的字符串分隔符声明为第一个参数。连接多个字段时非常方便。
<强>更新强>
我也很难理解这个问题,但是如果您尝试按年份和月份对数据进行分组,则可以将分组添加到上面的查询结尾,然后添加一些SUM
或COUNT
个运算符获取该月数据的摘要,例如
SELECT
CONCAT_WS(' ', MONTHNAME(date_issued), YEAR(date_issued)) as 'Date',
SUM(numeric_field) as 'total volume of my numeric field',
COUNT(id) as 'total count of my table data',
FROM your_table
GROUP YEAR(date_issued), MONTH(year_issued)
ORDER BY (date_issued);
答案 3 :(得分:0)
我们可以使用MySQL DATE_FORMAT
函数将DATE值转换为指定格式的字符串表示形式。按照&#34; date&#34;值,我们可以使用STR_TO_DATE函数将这些字符串转换回DATE
数据类型。
我们想要一个明确的&#34;月YYYY&#34;值。我们可以使用GROUP BY
子句来折叠行。
举个例子:
SELECT DATE_FORMAT(t.date_issued,'%M %Y') AS `**ARCHIVE MENU**`
FROM mytable t
GROUP BY DATE_FORMAT(t.date_issued,'%M %Y')
ORDER BY STR_TO_DATE(DATE_FORMAT(t.date_issued,'%M %Y'),'%Y-%m-01') ASC
-
这只是一个猜测,它并不完全清楚你想要实现的目标。