Я работаю над сайтом знакомств и благодаря отличным ответам мне удалось сделать этот запрос. Я полностью новичок :)Mysql union query duplicate rows
Проблема с этим запросом объединения заключается в том, что он, похоже, не удаляет повторяющиеся записи, и я понятия не имею, почему.
имя пользователя - это имя людей, которые присоединяются к сайту;
готовность - это то, что они желают сделать, часть их страницы профиля.
Например, если при поиске слова «обед» (например, в сильфоне запроса), то запрос находит человек, у которых есть символы «Ланч» в их пользователе или в их готовности профиль.
Но иногда, кто-то и слово «обед» в его пользователя и в его профиль готовности.
Как удалить эти повторяющиеся строки?
Я использую этот запрос для кода навигации php.
Не могли бы вы помочь?
result = mysql_query("
(SELECT 1 as sort_col,username,pic0 FROM ".$table." WHERE username IS NOT NULL AND username LIKE '%lunch%')
UNION
(SELECT 2 as sort_col,username,pic0 FROM ".$table." WHERE username IS NOT NULL AND age BETWEEN '28' AND '45' AND willingness LIKE '%lunch%')
ORDER BY sort_col
LIMIT ".$offset.", ".$rowsperpage."");
Любые идеи?
Спасибо!
Это страх, я вижу их, когда я действительно использую код, любую идею почему? имейте в виду, что термин «обед» и повторяющиеся строки появляются, когда имя пользователя позволяет сказать «обеденный», а также имя «обед» в его профиле. Таким образом, запрос перечисляет их дважды. – webmasters
@webmasters Как я уже сказал, строка, в которой имя пользователя «lunchy» получает значение sort_col 1, а строка, в которой профиль содержит «обед», получает значение sort_col из 2. Следовательно, две строки не являются точными дубликатами и не делятся на операцию UNION. –
Ty очень много для его очистки. Есть ли способ, чтобы имя пользователя «lunchy» удаляло его строку профиля из запроса или что-то в этом роде? В основном найти решение, чтобы обойти это? – webmasters