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

INSERT INTO, ако условието е изпълнено

INSERT изразът има два варианта:

INSERT INTO tableX
    (a, b, c, ...)
VALUES
    (1, 2, 3, ...) ;

и

INSERT INTO tableX
    (a, b, c, ...)
SELECT
    1, 2, 3
FROM
    ... ;             --- the same or another table or many tables

dual е системна таблица с точно 1 ред. Може да се използва за различни неща. Тук се използва като VALUES (...) се пренаписва като SELECT ... където нямаме подходяща таблица, която да поставим в FROM клауза:

$query_land = "INSERT INTO `Sequence` (`num_arr`,`start`,`fin`,`way_id`) 
               SELECT '".$solution[$i][0]."','".$solution[$i][1]."',
                      '".$solution[$i][2]."','".$solution[$i][3]."'
               FROM dual 
               WHERE '".$solution[$i][0]."' IN (SELECT num_arr 
                                                FROM Schedule 
                                                WHERE num_arr<>'')";



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ляво присъединяване към таблица и ехо в таблицата

  2. Таблицата на базата данни не съществува според компилатора на android studio

  3. PHP PDO и MySQLi

  4. Приложение в стил на анкета на Rails - Показване на всички отговори на опцията

  5. Използване на тригери като алтернатива на SQL агрегатна функция?