SELECT id, text
FROM table
WHERE category = [category id] AND active = 1
ORDER BY RAND()
LIMIT 1
일부 시간이 임의의 선을 선택
id | text | category | active
같은 MySQL의 테이블이 어떤 결과를 반환하지 않을 것이다있다 (활성 행의가 없다 예를 들어, 경우 특정 카테고리). 이 경우에해야 할 일은 "기본"행을 반환하는 것입니다.
내 질문은 :이 작업을 수행하는 가장 효율적인 방법은 무엇입니까? 동일한 테이블을 작성해야하지만 위의 쿼리가 결과를 제공하지 않으면 쿼리 할 기본 행만 사용해야합니까? 또는 동일한 테이블에 기본 행을 추가해야합니까? 그리고 당신은 그것을 어떻게 질문 할 것입니까?
모든 의견을 환영합니다! 질문에
편집 몇 업데이트 :
나는 그것이 사용자 정의 할 수 원하는대로 내가 가서 변경하지 않고, PHP의 기본 텍스트를 생성의 가능성을 제외하고 오전 암호.
는
음, 이것이 내가 원하는 부분으로가는 것 같습니다. – nico
나는 약간의 설명도 추가했습니다. 더 많은 예제가 필요한 경우 알려주십시오. –
나는 몇 가지 검사를 할 것입니다. 고마워요! – nico