2012-05-06 5 views
0

私はそこからテーブルの行を選択する方法を見つけようとしていますが、WHERE句にはこれが含まれているか、=>これが含まれていますか?MySQL正規表現経由で行を選択

私はそれをテーブルのフィールドにJSONとしてPHP $_SERVER, $_REQUESTを保存し、私のウェブサイト上のロギングシステムを持って最初から説明しましょう

は、だから私のテーブルレイアウトは、今私は」

______________________________________________ 
|__LogId__|___server_obj___|___request_obj___| 

ですだから、例が "REQUEST_TIME":1333907388だろうserver_obj の内側になるようたstartDateを経由してクエストにしようとmはそれがあるために、私はクエリを実行する方法をserver_obj

フィールド>特定のNUMでありますベール?

は、私がもし唯一の方法thatsのStoredProcsを使用することを恐れていないよしかし、その後、私はまだどうなるかわからないんだけど、それマジックナンバー16はプレフィックス長から来

+0

あなたが試したコードは何ですか? – Satya

+0

その番号**には常に** "REQUEST_TIME":**が付いていますか? – zerkms

+0

私はどこから始めるべきかわからないので、私は彼女がそれについて読むために見つけようとしていると感じていました。はい、いつも「REQUEST_TIME」が付いています。 –

答えて

0
SELECT * 
FROM tblname 
WHERE SUBSTRING(request_obj FROM 16) >= UNIX_TIMESTAMP() 

この"REQUEST_TIME":

+0

今、おかげでテストしました –

+0

@zerkmsの解決策は正しいですが、なぜVARCHARフィールドに不要な文字列プレフィックスを格納していますか?UNSIGNED INTフィールドとインデックスを使って、パフォーマンス。私の経験では、ログテーブルは非常に高速になる可能性が高いので、長期的にはそうすることをお勧めします。 – wisefish

+0

質問のために私はそれが含まれているJSONオブジェクトの一部だったので、私はそれを少し変更しなければならないことを尋ねたが、彼は私が尋ねたものに対して正しい答えを与えた –

関連する問題