当使用其他数据库(例如Oracle)时,Firebirds"STARTING WITH"的等价物是什么?

nor*_*aul 1 database oracle firebird

我正在调查更新我们的应用程序以使用Firebird以外的数据库服务器的可能性.我们依靠"STARTING WITH"来访问我们的分层数据.没有它,我看不出如何在没有经过一些严肃的重新设计的情况下迁移到另一个数据库.

如果您不熟悉"STARTS WITH",它只是检查字符串字段是否以特定字符串开头,例如......

WHERE 'This is a test' STARTS WITH 'This is' ... 
Run Code Online (Sandbox Code Playgroud)

会回归真实.如果列已建立索引,则索引将用于比较.

其他数据库服务器(尤其是Oracle/MSSQL)是否支持"STARTING WITH"(或"STARTS WITH")?

小智 8

实现这一目标的标准SQL类似于...... WHERE'这是一个测试'就像'这是%';