테이블에서 일부 뉴스 기사를 선택하기 위해 mysql 쿼리를 수행하려고하는데, 이제는 키가 항상 5 개의 결과가 필요합니다. mysql이이 쿼리로 선택하고이 쿼리로 채 웁니다.
그래서이 절 즉select * from here where this = 1
if there is < 5 results then select * from here where this = 2
limit [how ever many we are short say the first query brings back 3 results this should bring back 2]
지금 내가이 일을 노동 조합을 사용하여에 있지만, PHP와 다른 쿼리에서 외부의 도움의 예를하지 않고 방문한 경우 서로 내 결과에서 패드로 할 수 있도록 기대했다 내가 가능하다고 생각하지 않는 결과를 계산하려면 PHP를 사용하여 간단히이 작업을 수행 할 수 있다는 것을 알았지 만 결국 그렇게 할 것입니다. 그러나 내가하려는 것은 하나의 mysql 쿼리로 가능합니까? ?
편집 : 또한 날짜를 기준으로 주문해야하지만 그들은 정말이 1 = 여기서 이렇게 날짜별로
위해 5 개까지 얻을 순서에 게시되지 않은 5 패드 그것을 밖으로없는 경우
이 부분의 나머지는 2로 날짜순으로 정렬됩니다.
또 다른 부끄러운 편집 :
은 내가 그냥 테이블과 이전 코더의 데이터가 저를 만드는 재료의 모든 종류를 수행하는 노동 조합을 사용하고 있었다 가정 내 수면 부족했다 ... 롤 바보 같은 질문을
SELECT *
FROM here
WHERE this < 5 -- added this WHERE clause based on the idea that there will be at least one item per this
ORDER BY this ASC, `date` ASC
LIMIT 5;
아니면 다시 날짜별로 정렬 된 다섯 개 결과 후입니다 - 그것은
SELECT *
FROM
news
WHERE
(this = 45 || this= 0)
AND
active = '1'
ORDER BY
this ASC,
date_added DESC
LIMIT 5
하는 경우가 있었다하더라도에 우리의 질문이 당신이 찾고있는 것을 돌려주지 않으면 결과에 무엇이 잘못된 것인지 설명하십시오. – nnichols
바보 같은 질문을 부탁드립니다.내가 그냥 나에게 뉴스의 SELECT * 수 있어야하는 것보다 더 복잡하다고 생각하고, 테이블과 이전 코더의 데이터 별걸 다 할 조합을 사용하고 있었다 가정 내 수면 부족했다 및 활성화 = '1' BY ORDER이 ASC, DATE_ADDED DESC LIMIT 5 – user1054495