我正在设计一个有不同活动的模特网站。我已将图像存储在数据库表名称图像中。现在我的问题是如何在许多记录中显示一个事件的一条记录?例如:用户将在同一图像中上传多个事件图像,但具有相同的事件名称。现在我必须为每个事件显示单个图像。
表的名称是像imageID,imageName,imageType,eventName,imagePath
一样的图像如何创建一个sql语句,它打印不同的事件名称和图像
答案 0 :(得分:3)
你的问题不明确。 希望这个查询可能有所帮助。
select * from images
where eventName='name'
group by eventName
答案 1 :(得分:2)
扩大@learner的答案:
此代码:
SELECT * FROM images
WHERE eventName = 'name'
GROUP BY eventName
从应用的所有可能行中选择一个随机行
如果您希望对选择哪个图像进行一些控制,则需要使用HAVING
子句(或类似构造)。
此代码将选择最近添加的图像。
SELECT * FROM images
WHERE eventName = 'name'
GROUP BY eventName
HAVING id = MAX(id) <<-- assuming id is an auto_incrementing primary key
//HAVING date_added = MAX(date_added) <<-- use this instead if you have an added_date
如果您只对单个事件感兴趣,您也可以这样做:
SELECT * FROM images
WHERE eventname = 'name'
ORDER BY id DESC
LIMIT 1 OFFSET 0;