使用SUBSTRING 函數是用來抓出一個欄位資料中的其中一部分。
這個語法不適用於SQL Server上
SUBSTR (str, pos, len)
//以上語法的意思是,由 <str> 中的第 <pos> 位置開始,選出接下去的 <len> 個字元。
參考資料於http://www.1keydata.com/tw/sql/sql-substring.html
SELECT MKT_FARMER.FRM_FARMER_ID,FRM_PROD_no , FRM_PROD.FRM_PROD_ID,FRM_PROD_EXT.* FROM MKT_FARMER JOIN FRM_PROD on (MKT_FARMER.FRM_FARMER_ID = FRM_PROD.FRM_FARMER_ID) JOIN FRM_PROD_EXT on ( FRM_PROD.FRM_PROD_ID = FRM_PROD_EXT.FRM_PROD_ID) And MEDIA_TYPE='P' where 1=1 and(MKT_FARMER.FRM_FARMER_ID = :ID)
以上是我查詢出來的資料,
接下來要要將我查詢出來的資料,
裡的PHOTO_NAME欄位裡的第23個之後的字(含23)的欄位抓查詢出來
我加入了 SUBSTR(FPP.PHOTO_NAME,23)
SELECT MF.FRM_FARMER_ID,FP.FRM_PROD_NO, FP.FRM_PROD_ID,SUBSTR(FPP.PHOTO_NAME,23) ,FP.PROD_NAME FROM MKT_FARMER MF JOIN FRM_PROD FP ON (MF.FRM_FARMER_ID =FP.FRM_FARMER_ID) JOIN FRM_PROD_PHOTO FPP ON ( FP.FRM_PROD_ID =FPP.FRM_PROD_ID ) where 1=1
出來的結果是
心得:
因為後台建檔的資料
都會有磁碟的路徑
為了達到顧客需求
我使用SUBSTR 的SQL語法
將圖片的名稱擷取出來
建立在VIEW上的路徑就生效了!!
跟我的主管討論很久呢><
這方法真的很好用唷!