2011-01-06 7 views
0

을 선택 같은 : 열 PIC1에서 내가 처음이 아닌 빈 그림 값을 선택할 수있는 방법MySQL이 비어 있지 않은 열

id  | pic1 | pic2 | pic3 |  pic4  
------------------------------------------------------------- 
    1  |   | b.jpg | c.jpg |  d.jpg 

, PIC2, ​​pic3, ID를 가진 갤러리 (pic4)와 = 1? 위 예에서

는 PIC2 컬럼 (b.jpg) 모두가 비어있는 경우

+1

모든 사진 열이 비어 있다면 어떻게 될까요? – Programmer

+0

응용 프로그램 수준에서 수행해야 할 것 같아요 – shankhan

+0

@Programmer - 적어도 하나의 열을 채워야합니다 – Sergio

답변

3
SELECT COALESCE(pic1, pic2, pic3, pic4, 'backup.gif') AS pic 
FROM gallery 
WHERE id = 1 

backup.gif 반환 될 값의 것이다. 또한 공백으로에 의해 열이 NULL 있다고 가정합니다. 데이터베이스에서 이러한 경직된 방식으로 데이터를 구조화하는 이유를 이해하는 것이 재미 있을까 공백

+1

나는 downvote의 이유를 알고 싶습니다. –

+0

나는 그것을 심령 검사기로 의심하고 있습니다. –

+0

내가 거기에 downvote를 볼 수 있습니다 - 어쩌면 그것은 누군가가 클릭 행복합니다 ... –

1
SELECT COALESCE(pic1, pic2, pic3, pic4) AS pic 
FROM gallery 
WHERE id = 1; 

당신은, 빈 값을 표현하기 위해 NULL를 사용하는 가정하면?

+0

+1, 우리는 같은 시간에 같은 시간에 맞았습니다 :) –

+0

@ Moo-Juice 당신은 I보다 빨리 입력해야합니다.) –

관련 문제