1

さて、これが私のテーブル構造です。
名前: 報酬
構造: title 、 point 、 hasimg 、 imgurl

私がしたいのは、ユーザーが特定の金額以上のポイントを持っている場合に、タイトルと imgurl(if hasimg=1) を取得することです。

これが例です。報酬テーブルには次の値が入力されます (上記の順序に従って):
1 行目: ace , 1000 , 1 , http://imglink.com
2 行目: elite , 2000 , 0 , none
3 行目: pro , 3000 , 1 , http://imglink.com

ユーザーは3258ポイント を持っており、これは3000 を超えているため、「プロ」という称号が与えられます。では、mysqlクエリを使用して「pro」とimgurlを選択し(hasimg = 1であるため)、それらをphp変数に保存するにはどうすればよいですか?

ユーザーが2000 を超える2450ポイントを持っている場合、タイトルは「2000」になりますが、タイトルのみを取得し、hasimg=0 として imgurl を取得しません。

そして、3000がそれらよりも多いため、クエリが1000と2000を選択しないようにするにはどうすればよいですか?

4

1 に答える 1

0

基本的に、userPoints よりも小さい (または等しい) テーブルの最高点レコードが必要です。次のような SQL クエリを使用できます。

select * from rewards where point <= 2300 order by point desc limit 1

行を取得したら、イメージビットが設定されているかどうかを確認し、そのショーイメージに基づいているかどうかを確認できます。

于 2012-06-05T09:52:02.310 に答える