여기 내 문제입니다 ... 죄송합니다. 일부 사용자에게 너무 간단하다면, 이것에 초보자입니다.어떻게 MySql의 일부 레코드를 제외 할 수 있습니까?
나는 세 DB 테이블, 사람들 (idPerson), 질문 (idQuestion, 응답), AskedQuestions (idPerson, idQuestion)가 있습니다. 사용자에게 질문을하면 AskedQuestions에 행을 추가하여 레지스트리를 가질 수 있습니다.
내가 가진 문제는 특정 사용자에게 이전에 묻지 않은 질문을 임의로 선택해야한다는 것입니다.
무작위로 행을 선택하는 가장 좋은 방법은 몇 시간이고, 요청 된 것만 선택할 수있는 쿼리를 작성하는 방법은 여러 시간 동안 읽었지 만 어떻게 혼합 할 수 있는지 알지 못했습니다.
PHP와 MyD에서 누구나 어떻게 할 수 있습니까? 나는 그것을 대단히 감사 할 것이다. 커뮤니티에 미리 감사드립니다. 내 영어로 유감스럽게 생각합니다. 영어 실력이 최고!
인사말
편집
나는 U의 모든 투표를하려고하지만 rep15있을 때까지 내가 읽고 있던 나는이 ahahhaa ... 나는 한 가지를 metion 깜빡 수 없습니다 RAND()를 사용하면 테이블 전체를 검사합니다. 내 경우에는 받아 들일 수 없습니다. 테이블이 꽤 크기 때문에 500000 레코드와 AskedQuestions에 대해 1500000 이상에 대한 질문이 ... 그래서 RAND를 수행하는 데 걸리는 시간은 tooo slow ...
나는 비슷한 것을 필요로한다. 질문에 답하고 질문한다. stions 및 세션 사용자 및 idQuestion == idAskedQuestion ... idUser 동등한 것들을 제외하고 거기에서 임의의 하나를 선택?
그럴 수있는 방법이 있으며,이 경우 끔찍할 정도로 느려질 수 있습니다. ??
쇼, 지금까지 시도한 내용. – djot
@djot DB에서 임의의 행을 얻는 방법을 알고 있습니다. 행의 수를 찾고, PHP를 사용하여 0과 COUNT 사이의 임의의 숫자를 찾은 다음 임의의 ID가 생성 된 행을 가져옵니다. 그러나 질문하지 않은 질문 만받는 제한을 추가하면 모든 것이 더 복잡해집니다. 모든 질문이 실현 가능하지 않기 때문에이 절차를 수행 할 수 없습니다. – MauriLopez
@djot 그리고 다른 문제는 어떤 종류의 JOIN을 사용해야한다고 생각하지만, 어떻게 확신 할 수없는 것입니다. 데이터베이스에 대한 지식이 거의 없습니다. 내가 무엇을하지 않고 단지 묻기 위해왔다라고 생각하면, thats ok! 나는 서면으로 된 코드 응답을 원하지 않는다, 나는 약간의 단어와 함께 설명에 만족한다 !! – MauriLopez