sql >> Databasteknik >  >> RDS >> Mysql

Hur man slår upp intervallvärde från databasen

Om jag förstått dig rätt kan du använda CASE EXPRESSION så här:

SELECT id,user_id,
       case when friend_points between 0 and 49 then 'Normal rate'
            when friend_points between 50 and 99 then 'Friend'
            when friend_points between 100 and 149 then 'Good friend'
            .......
       end as 'Friend_Status'
FROM profile

EDIT:

Eller, om detta namn kan ändras dynamiskt, med en join:

SELECT t.id,t.user_id,s.name
FROM profile t
INNER JOIN friend_levels s ON(t.friend_points >= s.points_needed)
WHERE s.points_needed = (select min(f.points_needed)
                         from friend_levels f
                         where t.friend_points >= f.points_needed)


  1. Får du skillnader mellan två bord?

  2. databasanslutning misslyckas efter att ha skapat jar-fil

  3. Kan vi använda trådning i PL/SQL?

  4. ta bort SQLite-databas när du uppdaterar ny version av programmet