2016-09-15 39 views
0

在Excel中,我試圖創建公式應該看起來像這樣的:如何在Excel中創建公式以使其看起來像SQL語句OUTPUT?

LTRIM(RTRIM(SUBSTRING (FIELD,193,11))),  --Customer_ID 

的固定寬度是爲了什麼,我想做到的是:

Start: 193 
End: 203 
Length: 11 

此外,如果數據類型是不是「CHAR」,那麼它應該是這樣的:

CAST(LTRIM(RTRIM(SUBSTRING (FIELD,255,8))) AS DATETIME),  --Birthday 

固定寬度爲這樣的場景:

Start: 255 
End: 262 
Length: 8 
+1

'= TRIM(MID(A1,193,11))' –

+0

Hu?你想要的是基於你在SQL中做什麼的Excel中的等價物? –

+0

我想在Excel中輸出該SQL語句。寫完公式後。 – Dave

回答

0

以下是主要的Excel函數,你需要:

  1. MID(text,start_num,num_chars)這相當於在SQL
  2. TRIM(text)substring(value,start_idx,len)功能,是ltrim(rtrim())在SQL
  3. 相當於
  4. DATEVALUE(date_text)的這將將一個字符串(代表一個日期時間)轉換爲數字excel日期時間。

因此,作爲一個例子,我們下面可以包含在單元格A1:

=TRIM(MID(A1,33,11)) 

和日期時間:

Here's a long string with an ID:12345ABCDEF and a date:2016-09-15 and finally some other stuff 

然後,您使用可以獲得ID字符串12345ABCDEF2016-09-15使用:

=DATEVALUE(TRIM(MID(A1,56,10))) 

請記住,excel和SQL中的日期時間都是特殊格式的數字,但格式不同。因此,與所有系統一樣,將日期時間從一個系統傳輸到另一個系統的唯一有效方法是通過一個格式良好的字符串(我發現唯一真正一致的格式是ISO 8601),因此可能需要執行其他操作字符串格式化日期值。在Excel中,一旦你有一個數字日期時間值,你可以使用單元格格式來改變日期和/或時間的顯示,以任何你想要的。

相關問題