如何在MySQL中获得多个结果?Mysql返回多行,只需要1
SELECT DATE_ADD(data, INTERVAL(-WEEKDAY(data)) DAY) AS D
FROM Done
GROUP BY D
它给我。“2017年8月7日”和“2017年8月14日”,我需要他们两个,而是一个开始和另一个在末尾。我怎样才能做到这一点?
如何在MySQL中获得多个结果?Mysql返回多行,只需要1
SELECT DATE_ADD(data, INTERVAL(-WEEKDAY(data)) DAY) AS D
FROM Done
GROUP BY D
它给我。“2017年8月7日”和“2017年8月14日”,我需要他们两个,而是一个开始和另一个在末尾。我怎样才能做到这一点?
根据数据库查询的结果称为结果集。 因此,您的结果集包含2行,换句话说,您可以说来自此查询的结果集中有2个结果。
事实上,你有他们单独 - 每个在结果集中的自己的行。 以您正在使用的编程语言获取结果时,您将以集合或数组的形式接收它们。
然后,您可以获取该集合/数组的第一个和第二个元素并根据需要打印它们。
我正在使用php,试图将它们分开,但它从未正常工作 – SoManyQuestions
如果$ result是结果集,$ result [0]将返回结果集的第一行,而$ result [1] '会返回结果集的第二行。 – thexpand
$ result [0]给出22,$ resut [1]给出00,$ result [2]给出11和$ result [3]给出77 – SoManyQuestions
试试这个: -
DROP TABLE IF EXISTS tbl_1;
CREATE TEMPORARY TABLE tbl_1
AS
SELECT
DATE_ADD(data, INTERVAL(-WEEKDAY(data)) DAY) AS D,@row_num:[email protected]_num+1 as row_id
FROM
Done,(select @row_num:=0)rownum
GROUP BY D;
DROP TABLE IF EXISTS tbl_2;
CREATE TEMPORARY TABLE tbl_2
AS
SELECT * from tbl_1;
SELECT tbl_2.D,tbl_1.D from tbl_1
JOIN tbl_2 ON tbl_1.row_id=tbl_2.row_id+1
可以粘贴附加信息: - 什么是您的架构是什么样子? - 你究竟想要达到什么目的? – thexpand
它显示星期一的数据和星期五的数据,在“数据”中,星期一至星期五和星期几每天都完成 – SoManyQuestions
粘贴整个模式,以便每个人都可以看到。为什么列名为数据,而不是日期或什么?因为数据库中的所有内容都是数据,所以它不是很好的名称,因为数据库中的所有内容都是数据:) – thexpand