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

SQL:намиране на редове и сортиране според броя на съвпадащите колони?

Знам, че това е стар въпрос, но трябва да можете да увиете израз в скоби, за да го оцените

SELECT   *           
FROM     `cars`
WHERE    `color` = "black"
   OR    `weight` = "heavy"
   OR    `type` = "limo"
ORDER BY (   (`color` = "black")
           + (`weight` = "heavy")
           + (`type` = "limo") 
         ) DESC

Всеки израз в скоби ще бъде равен на 1, ако е вярно, 0, ако е false; по този начин чийто сбор ще бъде броят на съвпаденията.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. продължавайте да получавате синтактична грешка (php / mysql)

  2. Преминаване през mysql_fetch_array в PHP

  3. Как да създадете съхранена процедура в MySQL

  4. MySql получава списък с уникални думи от таблица, където стойностите в поле са разделени със запетая

  5. Как да проверите дали дадени данни съществуват в множество таблици (всички от които имат една и съща колона)?