我是靠谱客的博主 怕黑灯泡,这篇文章主要介绍java笔试题----mysql,现在分享给大家,希望可以做个参考。

写出查询语句:
表名:score
字段:ddate(日期),res(结果)

日期结果
2021-5-31
2021-5-31
2021-5-31
2021-5-31
2021-5-30
2021-5-30
2021-5-30

要求:

日期				胜		负
2021-5-30		1		2
2021-5-31		2		2

解决
其一:

SELECT
	ddate,
	decode(res, '胜', num) AS "胜",
	decode(res, '负', num) AS "负"
FROM
	(
		SELECT
			ddate,
			res,
			COUNT(*) num
		FROM
			score
		GROUP BY
			ddate,
			res
	) t
GROUP BY
	ddate

其二:

SELECT
	ddate,
	CASE
WHEN res = '胜' THEN
	num
END AS "胜",
 CASE
WHEN res = '负' THEN
	num
END AS "负"
FROM
	(
		SELECT
			ddate,
			res,
			COUNT(*) num
		FROM
			score
		GROUP BY
			ddate,
			res
		ORDER BY
			ddate
	) t
GROUP BY
	ddate

最后

以上就是怕黑灯泡最近收集整理的关于java笔试题----mysql的全部内容,更多相关java笔试题----mysql内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部