2011-01-25 5 views
1

私は何をしようとしているのが良い名前だと思います。MySQLからのカスタムフィールドのリクエスト

私はこれを持っています。

SELECT * FROM user_bans WHERE user_id='{$user->id}' 

私が欲しいのは、このようなものです。

SELECT *, active = (DATE(expire) > NOW() ? 1 : 0) FROM user_bans WHERE user_id='{$user->id}' 

期限フィールドはdatetimeフィールドです。禁止が期限切れになっているかどうかを確認し、それに応じて有効な値を設定したいと考えています。

これを行うにはどのような構文を使用する必要がありますか?

答えて

3

これは必要な場合があります。

SELECT *, IF(DATE(expire) > CURDATE() , 1 , 0) AS `active` 
FROM user_bans WHERE user_id={$user->id} 
+1

IF()は間違いなく彼が探していたものです。しかし、私は彼の問題のいくつかを修正するだろう。彼はCURDATE()と比較するべきNOW()と日付を比較している。user_idが整数の場合、{$ user-> id}引用符) – TehShrike

+0

あなたは正しいです!コードを編集しました! – Harish

関連する問題