Mysql
 sql >> база данни >  >> RDS >> Mysql

Заявката не е завършена - MYSQL

Звучи сякаш трябва да добавите агрегатна функция:

SELECT CD_NO, purchase_date, Count(purchase_date) totalSalesFROM ArtistGROUP BY purchase_dateORDER BY CD_NO 

MySQL ви позволява да ограничите броя на полетата, които ГРУПИРАТЕ ПО така че това по-горе е само групиране по purchase_date .

В други RDBMS можете да използвате подзаявка:

SELECT a1.CD_NO, a1.purchase_date, a2.TotalSalesByDateFROM Artist a1INNER JOIN( SELECT count(purchase_date) TotalSalesByDate, purchase_date FROM Artist GROUP BY purchase_date) a2 на a1.purchase_date=a2.purchase_dateORDER BY a1.CD_NO 

Редактиране:Въз основа на вашите актуализации трябва да можете да използвате нещо подобно на това:

SELECT a1.CD_NO, date_format(a1.purchase_date, '%Y-%m-%d') MostSalesFROM Artist a1INNER JOIN( SELECT count(purchase_date) TotalSalesByDate, purchase_date FROM Artist GROUP BY purchase_date) a2 на a1 .purchase_date=a2.purchase_dategroup от a1.CD_NO, a1.purchase_datehaving max(TotalSalesByDate) =(изберете max(Total) totalsales от ( SELECT cd_no, purchase_date, Count(purchase_date) Total FROM Artist a1 GROUP BY cd_no, purchase_date ) src където a1 .cd_no =src.cd_no ГРУПИРАНЕ ПО cd_no); 

Вижте SQL Fiddle с демонстрация

Резултат:

<предварителен код>| CD_NO | МОСТСАЛЕС |---------------------| 1 | 2011-12-30 || 2 | 2012-03-22 || 3 | 2012-04-22 || 3 | 2012-04-24 |



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Кога да използвате MongoDB

  2. Сравняване на два stdClass обекта

  3. Въздушен поток mysql към gcp Dag грешка

  4. Транзакционен DDL работен поток за MySQL

  5. Грешка при инсталиране на mysqlclient в AWS Elastic Beanstalk