2017-09-03 48 views
0

我一直在本练习破解我的头子和投选择一个月,教授希望我们从PostgreSQL中日期类型选择只有几个月,但只使用串并转换。 我尝试了几种方法,但都没有工作。这是后面一句,我有:日期与PostgreSQL的

select substring(cast(fac.fecha as varchar(10)), '_____[0,9]___') from facturas fac 

这句话返回此: sentence result

+0

您将有更好的回报,如果你添加一个http://sqlfiddle.com/ – sab

+0

感谢您的建议,但它无助于解决问题。 –

回答

0

[0,9]是“一个0或九或冒号”正则表达式。
你可能想[0-9]{2},即对于“2位”正则表达式。另一方面,substr()(不同的拼写,也许你有一个更强大的引擎,它支持正则表达式...)的所有实现(我所知道的),使用索引到字符串作为参数,没有任何正则表达式或即使是单字母通配符_
因此,我建议研究你substring()的文档。

+0

你说得不错,先生,该解决方案是使用6,2为指标: 选择SUBSTRING(CAST(fac.fecha为varchar(10)),6,2)从facturas FAC 谢谢你很多! –