繁体   English   中英

在使用MAX函数的同时返回多个记录?

[英]Returning multiple records whilst using a MAX function?

我不确定如何提出这个问题...此SQL字符串返回1个结果(我认为是由于MAX部分),但我希望它返回所有记录。

那么,在一个SQL语句中是否有一种方法可以检索与该事件相关的所有记录(WHERE ticket_event_no =:id)并找到记录集的最大完成日期(查找所有找到的票证的最新ticket_finish日期)?

                SELECT 
                    MAX( ticket_finish ) AS cutOff, ticket_price, ticket_id, ticket_name, ticket_qty, ticket_start, 
                    ticket_finish, ticket_max, ticket_type_no, ticket_min, ticket_order, ticket_fee
                FROM 
                    ticket 
                WHERE 
                    ticket_event_no = :id
                AND
                    ticket_hide = 0

提前致谢。

尝试这个:

SELECT 
MAX( ticket_finish ) over () AS cutOff, 
ticket_price, ticket_id, ticket_name, ticket_qty, ticket_start, 
ticket_finish, ticket_max, ticket_type_no, ticket_min, ticket_order, ticket_fee
FROM ticket 
WHERE ticket_event_no = :id AND ticket_hide = 0

您只需要在选择列表中的子查询中获取最大日期:

SELECT
    (SELECT Max(ticket_finish) from ticket) as cutOff, 
    ticket_price, 
    ticket_id, 
    ticket_name, 
    ticket_qty, 
    ticket_start, 
    ticket_finish, 
    ticket_max, 
    ticket_type_no, 
    ticket_min,
    ticket_order, 
    ticket_fee
FROM ticket
WHERE 
    ticket_event_no = :id
    AND ticket_hide = 0

这将拉动ticket_finish的最大值,并在所有行ticket_finish其填充为cutOff

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM