SQL クエリの SELECT ブロックを取得したいのですが、考えているのは、SELECT と FROM という単語の間のテキストを取得することです。私が使用することになっているREGEXは何ですか?
同じ方法で FROM、WHERE、JOIN ブロックを抽出することは可能ですか?
アップデート
http://code.google.com/p/php-sql-parser/は MySQL 用に構築されており、MSSQL クエリで壊れるため、使用できません。私はMSSQLパーサーをたくさん検索しましたが、既成の解決策を見つけることができませんでした.キーワード。
例
クエリについて
SELECT STRAIGHT_JOIN a,b,c
FROM some_table an_alias
WHERE d > 5;
私はこのようなものを返したい:
$result['SELECT'] => 'STRAIGHT_JOIN a,b,c';
$result['FROM'] => 'some_table an_alias';
$result['WHERE'] => 'd>5';