2012-03-13 7 views
0

я хочу получать повторяющиеся данные из базы данных, но проблема:
я есть UserIds в массиве как:Получить повторяющиеся данные из базы данных

1235, 1235, 5468, 84321, 1235 

я использовал взрываются и сделать этот массив в строку в реализации в базу данных, как:

"select * from tbl_name where userid in ('" . $implode_arr . "') limit 0, 10"; 

, который дает мне результат, как 1235, 5468, 84321, но я хочу, чтобы все данные, решение для этого просто запустите запрос в FOR LOOP или еще

, но я хочу, так как я добавляю разбиение на страницы в запросе.

Я не хочу никакого кода, потому что его уже работает, но проблема в том, чтобы добавить нумерацию страниц Пожалуйста, помогите решить проблему :(

+0

Вы обеспокоены созданием пагинацию из него, или вы хотите, чтобы исправить что-либо в данном коде? –

+0

@OMTheEternity спасибо за быстрый ответ, я просто хочу, чтобы весь результат был дублирован через массив. –

+0

Как вы хотите одновременно запускать один запрос на две разные базы данных, чтобы найти дубликаты? –

ответ

0

Это звучит, как вы хотите присоединиться к пользовательских данных в запросе. Вы может сделать это с помощью LEFT JOIN, как это:

SELECT * 
FROM tbl_name 
LEFT JOIN database_name.user ON database_name.user.id = tbl_name.userid 
WHERE userid IN (...) 
LIMIT 0, 10 

Это предполагает, что пользователи хранятся в user таблицы в базе данных database_name, и что пользовательская таблица имеет id поле, которое соответствует до tbl_name области userid Если ваши поля или таблица nam es разные, просто измените их в этом запросе. В PHP, который будет:

"SELECT * FROM tbl_name LEFT JOIN database_name.user ON database_name.user.id = tbl_name.userid WHERE userid IN ('" . $implode_arr . "') LIMIT 0, 10" 

Обратите внимание, что для соединения двух баз данных, и должны быть доступны вашим же подключенного пользователя.

+0

@jogesh, Ben lee post работал бы хорошо! –

+0

Спасибо, но проблема с этим у меня есть две разные базы данных, это будет работать с единой базой данных. Но если можно подключить две базы данных без конфликтов на сервере, тогда это будет здорово. –

+0

@SamArulRaj вы правы, но я упомянул о своей другой проблеме. –

0

Попробуйте это было бы также работать, как ожидалось

 select * from tbl_name where FIND_IN_SET(user_id,'1235, 1235, 5468, 84321, 1235 
') limit 1,10 

Check this to remove duplicates

+0

wait, я попробую –

+0

: (не работает. –

Смежные вопросы