我正在努力从表中的数据库输出值。我的表有5列:Date,FirstName,LastName,City,State。以下是我的数据库表的示例:
DateMeeting FirstName LastName City State
2015-12-11 Mike Johns Dallas TX
2015-12-11 John Cook Dallas TX
2015-12-11 Nick Roberts Dallas TX
2015-12-11 Oliver Ryan New York NY
2015-12-11 Michael Best New York NY
2015-12-11 David Holmes New York NY
所以我希望输出表只显示多个记录的一个日期。我尝试在日期使用DISTINCT,并且工作正常,但如果我为City和State包含我的WHERE子句,我的查询会中断。此外,我尝试使用GROUP BY但同样的问题,只要我不包含其他列,我只能获得一次Date值。在这种情况下,我需要所有列,但我的日期值只需要一次。这是我使用的查询:
Select Distinct(DateMeeting),FirstName, LastName, City, State
From Customers
Where City = 'Dallas'
and State = 'TX'
只有在运行DISTINCT(DateMeeting)时,此查询才能与我在select中的所有列一起使用。我想在表格中输出我的值,如下所示:
Date First Name Last Name City State
Mike Johns Dallas TX
John Cook Dallas TX
Nick Roberts Dallas TX
2015-12-11 Oliver Ryan New York NY
Michael Best New York NY
David Holmes New York NY
如果有人知道如何做到这一点,请告诉我。谢谢。
答案 0 :(得分:3)
技术堆栈中的每一层都有其优点和缺点。
至于mysql,请不要将其转换为报告引擎,如空白日期列所述,除了每个日期在日期块中间的某个位置,如图所示。订购的后续日期将变得混乱和困惑。
没错,可以使用稍微有趣的mysql 变量并将其转储到块的第一行。但是为了什么。
发挥mysql的优势,返回所有数据。并且有前端(coldfusion或其他),处理您希望输出的报告功能。