죄송합니다 예제,하지만 뭔가가 SQL 누락되었습니다 및 나는 무엇인지 모르겠다 근본적인 믿습니다. 나는이 미친 쿼리를 가지고 ... ORDER BY
절이 없기 때문에 내부 쿼리에서SQL에서 열 최대 버블 링
SELECT *
FROM (
SELECT *
FROM (
SELECT @t1 := @t1 +1 AS leaderboard_entry_youngness_rank, 1 - @t1 /100 AS
leaderboard_entry_youngness_based_on_expiry, leaderboard_entry . * ,
NOW() - leaderboard_entry_timestamp AS leaderboard_entry_age_in_some_units,
TO_DAYS(NOW()) - TO_DAYS(leaderboard_entry_timestamp)
AS leaderboard_entry_age_in_days
FROM leaderboard_entry) AS inner_temp
NATURAL JOIN leaderboard
NATURAL JOIN user
WHERE (
leaderboard_load_key = 'sk-en-adjectives-1'
OR leaderboard_load_key = '-sk-en-adjectives-1'
)
AND leaderboard_quiz_mode = '0'
ORDER BY leaderboard_entry_age_in_some_units ASC , leaderboard_entry_timestamp ASC
LIMIT 0 , 100
) AS outer_temp
ORDER BY leaderboard_entry_elapsed_time_ms ASC , leaderboard_entry_timestamp ASC
LIMIT 0 , 50
I added the second nested SELECT statement because the user_name in the user table was not being returned in the outermost query. But now the leaderboard_entry_youngness_based_on_expiry field, which is being generated based on a row index ratio, is not working correctly.
If I remove the second nested SELECT statement, the leaderboard_entry_youngness_based_on_expiry works as expected, but the user_name column is not returned.
How can I satisfy both? Why is this happening?
Thanks!
This stems from the following question:
Add a numbered list column to a returned MySQL query
어디'user_name' 열에서 오는? 1 개 이상의 테이블에서 가능합니까? –
user_name 열이 사용자 테이블에서 왔고 여러 테이블에 없다고 생각하면 안됩니다. ( – swinefeaster
쿼리를 실행하기 전에 세션 변수를 '@ t1'으로 설정할 때마다 0으로 설정 했습니까? –