[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Странная выборка
Forever
Есть таблица photos:

num (primary AI) | date |user |album | thumbnail |medium |full |

В ней три записи:
1| 2014-07-09| 16:50:10| vasya| 43| /thumb/taaa.jpg |/medium/maaa.jpg| /full/faaa.jpg
2| 2014-07-09| 16:50:10| vasya| 43| /thumb/tb.jpg |/medium/tb.jpg | /full/tb.jpg
3| 2014-07-09| 16:50:10| vasya| 43| /thumb/tccc.jpg | /medium/mccc.jpg| /full/fccc.jpg

Достаю фотки на странице фотоальбома 43 :
SELECT SQL_CALC_FOUND_ROWS num, album, thumbnail, medium FROM PHOTOS where user= 'ramundo' AND album =43 ORDER BY `date` 
ORDER BY не имеет смысла в данном конкретном случае, ибо даты у фоток одинаковые. Соответственно, строки выбираются именно в том порядке, в котором хранятся в бд.

На странце списка альбомов достаю название альбома и последнее загруженное в него фото (исходя из даты).
SELECT SQL_CALC_FOUND_ROWS a.anum, a.aname, p.thumbnail FROM albums a LEFT JOIN ( SELECT * FROM photos ORDER BY date DESC ) AS p ON (a.anum = p.album) where a.user = "ramundo" group by aname
Вот чего не пойму: Почему для альбома А последним загруженным фото выбирается не /thumb/taaa.jpg, а /thumb/tb.jpg ?. почему стало отрабатывать упорядочивание по дате, и при этом выбирается вторая фотка из трех?
Placido
Цитата
ORDER BY не имеет смысла в данном конкретном случае, ибо даты у фоток одинаковые. Соответственно, строки выбираются именно в том порядке, в котором хранятся в бд.


В этом случае порядок строк в выборке не гарантирован. Он может быть каким угодно.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.