gpt4 book ai didi

php - 需要 PHP 和 MySQL 方面的帮助...

转载 作者:行者123 更新时间:2023-11-29 14:48:18 26 4
gpt4 key购买 nike

我有一个歌曲表,有些歌曲是专辑歌曲,有些是单曲...而且我有一个专辑表...

歌曲表列:Song_ID、Album_ID、Song_Name、Date_Released、Timestamp_Released、其他...如果Album_ID为[null],则表示该歌曲是单曲

专辑表列:Album_ID、Album_Name、Song_IDs、Date_Released、其他...

注1:相册表中没有Timestamp_Released

注2:Date_Released只是没有时间的一天,即“2011-06-16”

我目前正在使用此查询来显示一个表格(在我的 html/php 页面中),其中每一行都是一首单曲或一张专辑(专辑中的歌曲全部显示在一行中作为专辑)

SELECT 
IF(Album_ID IS NULL,s.Song_Name,a.Album_Name) as name,
IF(Album_ID IS NULL,s.Date_Released,a.Date_Released) as datereleased,
s.Timestamp_Released
FROM songs s LEFT JOIN albums a ON (s.Album_ID = a.Album_ID)
GROUP BY 1,2
ORDER BY 2 DESC,1
LIMIT 0,10;

上面的查询根据日期对歌曲和专辑列表进行排序,并为专辑提供专辑中最古老歌曲的 Date_ReleasedTimestamp_Released...

所以我的问题是如何为专辑提供最新歌曲的 Date_ReleasedTimestamp_Released

谢谢:)

最佳答案

不要将s.Date_Released、s.Timestamp_Released写入MAX(s.Date_Released)作为Newest_Date_Released,MAX(s.Timestamp_Released)作为Newest_Timestamp_Releasd更新

SELECT 
IF(Album_ID IS NULL,s.Song_Name,a.Album_Name) as name,
MAX(IF(Album_ID IS NULL,s.Date_Released,a.Date_Released)) as datereleased,
MAX(s.Timestamp_Released)
FROM songs s LEFT JOIN albums a ON (s.Album_ID = a.Album_ID)
GROUP BY 1
ORDER BY 2 DESC,1
LIMIT 0,10;

关于php - 需要 PHP 和 MySQL 方面的帮助...,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6378146/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com