sql >> Database >  >> RDS >> Mysql

Wijs plaatsen toe in de beoordeling (MySQL, PHP)

Hoewel Andrew G. Johnson gelijk heeft, hoeft u deze informatie misschien niet eens in de database op te slaan.

Het antwoord dat ik voor je heb is simpel:"Waarom wil je dit in de database opslaan?"

Als je echt een goede reden hebt, dan heb je een paar keuzes op basis van hoe statisch de gegevens zijn. Als de gegevens zijn gemaakt en vervolgens allemaal tegelijk worden ingevoegd, ORDER BY rating_score DESC aan het einde van uw verklaring zou het moeten doen (als rating_place automatisch wordt toegewezen vanaf 1).

Anders zou ik iets doen op een speciale PHP-pagina die, zodra je 2 kolommen zijn gelezen, de rating_place toewijst. Als u handmatig gegevens in uw database invoert, kan het geen kwaad om de pagina te moeten openen. Als het verzamelen van gegevens geautomatiseerd is, bel dan naar de "update_places_page" die de beoordeling bijwerkt.

Bewerken:

Een andere optie is om gewoon een weergave voor rating_score te maken die de top 20 neemt en bestellingen opnieuw ordent, en vervolgens een keuze maakt uit de nieuwe weergave en de werkelijke tabel op basis van rating_score.



  1. Wat is het ideale gegevenstype om te gebruiken bij het opslaan van breedtegraad / lengtegraad in een MySQL-database?

  2. CakePHP Database verbinding Mysql ontbreekt, of kon niet worden aangemaakt

  3. Onjuiste tekenreekswaarde bij het invoegen van UTF-8 in MySQL via JDBC?

  4. Best practice voor een mysql-gegevensversiesysteem