/**
* PGSearchFunction ::= "PG_SEARCH" "(" StateFieldPathExpression "," StringPrimary ")"
*/
class PGSearch extends FunctionNode
{
public $searchColumn = null;
public $search = null;
public function parse(Parser $parser)
{
$parser->match(Lexer::T_IDENTIFIER);
$parser->match(Lexer::T_OPEN_PARENTHESIS);
$this->searchColumn = $parser->StateFieldPathExpression();
$parser->match(Lexer::T_COMMA);
$this->search = $parser->StringPrimary();
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
}
public function getSql(SqlWalker $sqlWalker)
{
return sprintf("%s @@ to_tsquery('english', %s)", $this->searchColumn->dispatch($sqlWalker), $this->search->dispatch($sqlWalker));
}
}
[構文エラー]行0、列-1:エラー:予期される=、<、<=、<>、>、> =、!=、文字列の終わりを取得しました。教義がこれを標準のSQL式のように見ないようにする方法についての提案はありますか?教義2.2ところで使用します。