我有一个像这样的字符串值:
<?php
$installer = $this;
$installer->startSetup();
$table = $installer->getTable('cms/page');
$installer->getConnection()->addColumn($table,'parent_id',array(
'type' =>Varien_Db_Ddl_Table::TYPE_INTEGER,
'comment' => 'Parent CMS Page'
));
$installer->getConnection()->addColumn($table,'include_in_nav',
array(
'type' =>Varien_Db_Ddl_Table::TYPE_BOOLEAN,
'comment' => 'Include in navigation menu'
));
$installer->getConnection()->addColumn($table,'position',
array(
'type' =>Varien_Db_Ddl_Table::TYPE_INTEGER,
'comment' => 'Position from navigation (category) menu. 1=left; 2=right'
)); //1: left; 2: right
$installer->endSetup();
我想摆脱
\\dsm-smo38\RepositorioEntregable\Archivos\19062016\CAPTACION\BAZ\07566\075660106201515171475.tif
并且只保留
\\dsm-smo38\RepositorioEntregable\Archivos\19062016\CAPTACION\
我该怎么做?
此致!!
答案 0 :(得分:0)
如果\ dsm-smo38 \ RepositorioEntregable \ Archivos \ 19062016 \ CAPTACION \是一致的,你可以使用替换:
select replace(your_column,'\\dsm-smo38\RepositorioEntregable\Archivos\19062016\CAPTACION\','')
from your_table
答案 1 :(得分:0)
假设'BAZ'始终在列值中。
{{1}}
答案 2 :(得分:0)
Aldo,您可以尝试以下方法。如果你不会一直在你的字符串中使用'BAZ \',你可以将下面的代码变成一个函数并传递你想要从中开始提取的任何字符串。例如,您可以设置@FilterStrng ='Archivos'。这将为您提供从'Archivos'开始的字符串。
CREATE TABLE #SplashString
(
StringText VARCHAR(255)
);
INSERT INTO #SplashString
( StringText )
VALUES ( '\\dsm-smo38\RepositorioEntregable\Archivos\19062016\CAPTACION\BAZ\07566\075660106201515171475.tif' -- StringText - varchar(255)
),
( '\\dsm-smo38\RepositorioEntregable\Archivos\DOCS1906201601\BAZ\05884\05884020520142706162.tif' -- StringText - varchar(255)
);
DECLARE @FilterStrng VARCHAR(255)= 'BAZ\';
SELECT STUFF(StringText, 1, CHARINDEX(@FilterStrng, StringText) - 1, '') AS FilteredString
FROM #SplashString;