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

лесни начини за избор на редове от цялата таблица

Ако всички таблици имат една и съща структура, можете да използвате UNION заявка за връщане на редове от трите таблици наведнъж:

$check = mysqli_query($con, "SELECT * FROM text WHERE keyword='$string'
                             UNION
                             SELECT * FROM sticker WHERE keyword='$string'
                             UNION
                             SELECT * FROM image WHERE keyword='$string'");

Това ще ви даде еквивалентния набор от редове, който ви дават трите ви съществуващи заявки. Имайте предвид, че няма да има начин да се определи от коя таблица е дошъл даден ред, така че може да искате да добавите допълнително поле, за да посочите, че напр.

$check = mysqli_query($con, "SELECT *, 'text' AS src FROM text WHERE keyword='$string'
                             UNION
                             SELECT *, 'sticker' AS src FROM sticker WHERE keyword='$string'
                             UNION
                             SELECT *, 'image' AS src FROM image WHERE keyword='$string'");


  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. Как да използвате временна колона в клаузата where

  3. съставен (буквено-цифров) първичен ключ и автоматично увеличение

  4. nodejs mysql Грешка:Връзката е изгубена Сървърът затвори връзката

  5. php mysql пълнотекстово търсене:lucene, sphinx или?