Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

SQL तालिका में सम्मिलित करें नई पंक्तियाँ एक ही तालिका में प्रत्येक फ़ील्ड के लिए:

MySQL 8.0 या बाद के संस्करण के मामले में आप अगली क्वेरी का उपयोग कर सकते हैं:

INSERT IGNORE INTO products
SELECT 
    id_product,
    143 as id_category,
    (
       SELECT MAX(position) 
       FROM products
       WHERE id_category = 143
     ) + 
     (row_number() over (order by id_product)) as position
FROM products
WHERE id_category = 12;

SQLize.online से परिणाम :

+============+=============+==========+
| id_product | id_category | position |
+============+=============+==========+
| 190        | 12          | 10       |
+------------+-------------+----------+
| 191        | 12          | 11       |
+------------+-------------+----------+
| 230        | 12          | 12       |
+------------+-------------+----------+
| 15         | 143         | 12       |
+------------+-------------+----------+
| 150        | 143         | 50       |
+------------+-------------+----------+
| 190        | 143         | 51       |
+------------+-------------+----------+
| 191        | 143         | 52       |
+------------+-------------+----------+
| 230        | 143         | 53       |
+------------+-------------+----------+



  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. क्या php/mysql के लिए sql इंजेक्शन की पहचान करने के लिए कोई स्थिर विश्लेषण उपकरण है?

  3. सी #:एसक्यूएल क्वेरी बिल्डर क्लास

  4. MySQL सीमा परिणाम प्रति श्रेणी

  5. सरणी इनपुट मान mysql में खाली रिकॉर्ड सम्मिलित करता है