以下查询生成以下示例。我想只拉出最后一个(总是第三个)半冒号之后的东西。每个输出都有不同的城市,所以我不能修剪一定数量的空间,因为它会有所不同。
SELECT MAX(E.EVENT_DESC)
FROM IASDB.EVENT E
WHERE SL.INVOICE_NO = E.INVOICE_NO
AND E.EVENT_CODE IN 'EDL'
示例:
Consignee;Jeffersonville,IN;J 6
Consignee;Nashville,TN;J 14
我只需要拉出最后一个半冒号后面的字符? (例如:' J 6'或' J 14')
答案 0 :(得分:1)
这应该在DB2中起作用:
SELECT MAX(RIGHT(
E.EVENT_DESC
,LENGTH(E.EVENT_DESC) - LOCATE_IN_STRING(E.EVENT_DESC,';',-1)))
FROM IASDB.EVENT E
WHERE SL.INVOICE_NO = E.INVOICE_NO
AND E.EVENT_CODE IN 'EDL'