无法从查询中获取值

I am running this below code but it returns an error as: "undefined index: value"

$two_tier= mysql_query("
    SELECT Count(1)
    FROM(
        SELECT `login_id`
        FROM `data`
        WHERE Year(`start_at`) = Year(Date_sub(Now(), INTERVAL 1 month))
        AND Month(`start_at`) = Month(Date_sub(Now(), INTERVAL 1 month)) 
        AND end_at > Date_add(start_at, INTERVAL 5 minute) 
        GROUP  BY `login_id`
        HAVING Count(`login_id`) > 1
    ) AS Value
");

$two_cnt = mysql_fetch_assoc($two_tier);
echo $two_cnt['value'];

I am trying to get the "value". Little help, please.

SELECT Count(1) as my_value
FROM   (SELECT `login_id` 
        FROM   `data` 
        WHERE  ( Year(`start_at`) = Year(Date_sub(Now(), INTERVAL 1 month)) 
                 AND Month(`start_at`) = Month(Date_sub(Now(), INTERVAL 1 month) 
                                         ) ) 
               AND ( end_at > Date_add(start_at, INTERVAL 5 minute) ) 
        GROUP  BY `login_id` 
        HAVING Count(`login_id`) > 1) AS Value


$two_cnt = mysql_fetch_assoc($two_tier);
echo $two_cnt['my_value'];

you select your FROM as Value, but result of first select isn't in that Value, you need one more AS

Since the exterior most value in SELECT statement is SELECT Count(1), so you are actually fetching Count(1) as Count(1) instead of value. To fetch it as value, you'll need to do it as:

SELECT Count(1) AS value ....

and then the code will work fine. So, the final statement will be:

$two_tier= mysql_query("
    SELECT Count(1) AS value
    FROM(
        SELECT `login_id`
        FROM `data`
        WHERE Year(`start_at`) = Year(Date_sub(Now(), INTERVAL 1 month))
        AND Month(`start_at`) = Month(Date_sub(Now(), INTERVAL 1 month)) 
        AND end_at > Date_add(start_at, INTERVAL 5 minute) 
        GROUP  BY `login_id`
        HAVING Count(`login_id`) > 1
    ) AS Value
");