Maison > Questions et réponses > le corps du texte
J'ai 2 tables de Jeux et de Trading J'utilise cette formule sum(EntryFee * Rake/(100 + Rake)*TotalEntry) dans la table Games pour obtenir la valeur
J'utilise cette requête dans le nombre de tables de transactions (différents identifiants d'utilisateur) pour obtenir les valeurs
Maintenant, je veux diviser la valeur de [sum(EntryFee * Rake/(100 + Rake)*TotalEntry)] par la valeur de [count(distinct UserID)]
Par exemple sum(EntryFee * Rake/(100 + Rake)*TotalEntry) = 90 et count(distinct UserID) = 3 Alors 90/3 = 30 Comment puis-je faire cela dans MYSQL
P粉2956161702024-03-31 09:37:42
CREATE TABLE Games (EntryFee INT, Rake INT, TotalEntry INT); CREATE TABLE Transaction1 (UserID VARCHAR(25)); INSERT INTO Games VALUES (30,16,150),(45,20,100),(15,5,50),(25,20,300),(10,8,270); INSERT INTO Transaction1 VALUES ('Daniel'),('David'),('John'),('Martha'); SELECT Games.EntryFee, Games.Rake, Games.TotalEntry, COUNT(distinct Transaction1.UserID) AS CountUser, (Games.EntryFee * Games.Rake / (100 + Games.Rake) * Games.TotalEntry / COUNT(distinct Transaction1.UserID)) AS Calculate FROM Games JOIN Transaction1 GROUP BY Games.EntryFee, Games.Rake, Games.TotalEntry;
Résultat :
+==========+======+============+===========+==============+ | EntryFee | Rake | TotalEntry | CountUser | Calculate | +==========+======+============+===========+==============+ | 10 | 8 | 270 | 4 | 50.00000000 | +----------+------+------------+-----------+--------------+ | 15 | 5 | 50 | 4 | 8.92857500 | +----------+------+------------+-----------+--------------+ | 25 | 20 | 300 | 4 | 312.50000000 | +----------+------+------------+-----------+--------------+ | 30 | 16 | 150 | 4 | 155.17242500 | +----------+------+------------+-----------+--------------+ | 45 | 20 | 100 | 4 | 187.50000000 | +----------+------+------------+-----------+--------------+
P粉4884647312024-03-31 00:53:56
SELECT ( SELECT sum(EntryFee * Rake/(100 + Rake)*TotalEntry) FROM Games )/( SELECT count(distinct UserID) FROM Transaction ) MyResult