2011-08-29 3 views
0

SQL에 대해 더 많이 배우고 있으며 이미 PHP로 수정해야하는 문제를 해결하는 데 유용하다는 것을 알았습니다. 이제 mysql이이를 수행 할 수 있음을 발견했습니다. 재 입국.간단한 mysql select 문을 수행하는 방법

내가 가진 쿼리입니다.

SELECT * 
          FROM `messages` 
          LEFT JOIN `users` ON messages.message_by = users.id 
          WHERE job_id = '135' 
          ORDER BY message_date DESC 

그러나 지금은이 작업을 수행 할 수는 DATE_ADD 부분은 시간대 차이의 문제를 해결하지만,

SELECT DATE_ADD(`message_date`, INTERVAL 6 HOUR) AS `message_date`, * 
          FROM `messages` 
          LEFT JOIN `users` ON messages.message_by = users.id 
          WHERE job_id = '135' 
          ORDER BY message_date DESC 

나는 돈 지금 문 I의 선택 부분에 있음을 넣었습니다으로 *, (그리고 그 밖의 모든 것)을 사용하는 방법을 알지 못합니다. 이 날짜 수정을 추가했기 때문에 검색 후 모든 필드를 나열하고 싶지 않습니다 ...

어떻게 될까요? 감사.

답변

1

그냥 테이블의 이름을 앞에 추가하고 또한

SELECT DATE_ADD(`message_date`, INTERVAL 6 HOUR) AS `message_date`, messages.* 
          FROM `messages` 
          LEFT JOIN `users` ON messages.message_by = users.id 
          WHERE job_id = '135' 
          ORDER BY message_date DESC 

작동합니다, 당신은 모든 필드를 선택해야 하시겠습니까? 필요한 열만 선택하여 속도를 향상시킬 수 있습니다.

+0

고맙습니다. 나는 보통 필요한 칼럼 만 선택하지만,이 경우에는 하나 또는 둘을 제외하고 모두 그 칼럼을 가지고 있습니다. 그리고 그 칼럼에는 작은 숫자가 들어 있으므로 가치가 없습니다. –

관련 문제