2012-08-27 45 views
0

我想從下面的表像這樣...得到的結果,預計MySQL查詢

預期結果:

Fldempployee   flddept  Date   Day   Week off 
00625267-Karthick S Corporate  04-25-2012 Wednesday 
          (or) 
00625267-Karthick S Corporate  04-28-2012 Saturday  Week end 
          (or) 
00625267-Karthick S Corporate  04-29-2012 sunday Week end 
          (or) 
00625267-Karthick S Corporate  04-27-2012 Friday  

我的表結構是這樣的。

F_id flddept  fldemployee   fldintime fldouttime fldlateafter fldearlybefore fldweekoff fldshiftname  fldassigndate fldfromdate fldtodate fldrefid 
1  Corporate 00625267-Karthick S 09:30 am 06:15 pm 09:30 am  06:15 pm  Sat,Sun, COR-General Shift  04-25-2012 04-01-2012 05-31-2012 

在fldweekoff列有兩個值坐着sunday.It可能是週一和wednesday.I要搜索一個記錄的具體日期是指由上述一個記錄顯示的一樣,隨着一週的假field.The具體日期是不是在一週的假意味着它應該顯示爲空值..」

回答

1

試試這個

SELECT Fldempployee,flddept,fldassigndate日期,DAYNAME(fldassigndate)如白晝, 如果(SUBSTRING(DAYNAME(日期) ,1,1)='S','週末','平日')作爲來自your_tableName的週末;

這裏:基於'fldassigndate'列顯示日/周的列。如果您給予fldassigndate(04-25-2012)意味着它會給你這樣的結果。

Fldempployee ------ flddept ------- Date -------- Day ------- Week-off
00625267-Karthick S Corporate 04-25- 2012週三工作日
否則請發佈您的查詢
乾杯

+0

假設我想從2012年4月1日到2012年4月10日獲得結果集。我怎樣才能得到這個具體週末的名單。 –

+0

沒問題!!這裏的查詢基於fldassigndate專欄。如果日期在您的範圍內可用,它將顯示結果.. –

+0

但是它將所有行返回一週。不僅僅是具體的日期。 –