Mysql
 sql >> Baza danych >  >> RDS >> Mysql

mysql cte . używanie z i wstawianie ostrzega o błędzie składni

Użyj insert . . . select :

INSERT INTO flow_instances (custom_id_year, custom_id_counter)
WITH this_year AS (
      SELECT YEAR(CURDATE()) as this_year
     ),
     max_val AS (
      SELECT COALESCE(MAX(custom_id_counter), 0) as max_val
      FROM flow_instances AS max_val
      WHERE custom_id_year = YEAR(CURDATE())
     )
    SELECT ty.this_year, mv.max_val + 1
    FROM this_year ty CROSS JOIN
         max_val mv;

Musisz odwołać się do CTE, aby użyć wartości, które definiują.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. liczba mysql w zmiennej PHP

  2. Jak mogę wyliczyć średnią dat w MySQL?

  3. INSERT INTO za pomocą SubQuery MySQL

  4. mysql.sock nie jest utworzony OSX

  5. Jak przechowywać wiele wartości w jednej kolumnie, gdy zużywasz mniej pamięci?