2014-02-05 5 views
0

нужно выбратьSql, выберите две различные значения из одной таблицы

Select Bid Id,date 
From Bid where 
Status ='Won' as successful 

А также

Select Bid Id, date 
From Bid where 
Status =Null as unsuccessful 

Привет всем, мне нужно, чтобы выбрать два типа для статуса в моей таблице bid и дисплей с их id как я могу это сделать, пожалуйста?

ответ

0

Вы можете использовать CASE:

Select Bid, Id,date, 
    WonStatus = CASE WHEN Status ='Won' THEN 'Successful' ELSE 'Unsuccessful' END 
From Bid where 

или, если вы хотите Concat все строки, первое успешное и затем неудачная, используйте UNION ALL:

Select Bid, Id,date 
From Bid 
Where Status ='Won' as successful 


UNION ALL 

Select Bid, Id,date 
From Bid 
Where Status IS NULL AS unsuccessful 

Edit: «и если вы хотите знать, насколько успешны и насколько успешны в месяц? »

Тогда это должно работать:

Select YEAR(date) AS B_Year, 
     MONTH(date) AS B_Month, 
     Count(*) AS Success_Count 
From Bid 
Where Status = 'Won' 
GROUP BY YEAR(date), MONTH(date) 
+0

и, если хотите знать, насколько успешно и сколько успешна в месяц – user3246292

+0

@ user3246292: редактировал свой ответ. –

0
SELECT Bid 
    , ID 
    , date 
    , CASE 
     WHEN status IS NULL THEN 'unsuccessful' 
     WHEN status = 'Won' THEN 'successful' 
WHERE status = 'Won' 
    OR status IS NULL 
Смежные вопросы