Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

PHP:स्टार रेटिंग सिस्टम अवधारणा?

यहाँ एक बहुत ही सरल mysql उदाहरण है:

drop table if exists image;
create table image
(
image_id int unsigned not null auto_increment primary key,
caption varchar(255) not null,
num_votes int unsigned not null default 0,
total_score int unsigned not null default 0,
rating decimal(8,2) not null default 0
)
engine = innodb;

drop table if exists image_vote;
create table image_vote
(
image_id int unsigned not null,
user_id int unsigned not null,
score tinyint unsigned not null default 0,
primary key (image_id, user_id)
)
engine=innodb;

delimiter #

create trigger image_vote_after_ins_trig after insert on image_vote
for each row
begin
 update image set 
    num_votes = num_votes + 1,
    total_score = total_score + new.score,
    rating = total_score / num_votes  
 where 
    image_id = new.image_id;
end#

delimiter ;

insert into image (caption) values ('image 1'),('image 2'), ('image 3');

insert into image_vote (image_id, user_id, score) values
(1,1,5),(1,2,4),(1,3,3),(1,4,2),(1,5,1),
(2,1,2),(2,2,1),(2,3,4),
(3,1,4),(3,5,2);

select * from image;
select * from image_vote;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - चयन क्वेरी के आधार पर अद्यतन क्वेरी

  2. Google मानचित्र में रीयल टाइम ट्रैकिंग

  3. PHP ऑब्जेक्ट प्रॉपर्टी में ब्रैकेट होते हैं

  4. जावा ईई एप्लिकेशन में बड़े रिकॉर्ड को संभालना

  5. डेटाबेस mysql में छवियों को सहेजना