sql >> Database teknologi >  >> RDS >> Mysql

Hvordan indsætter man flere rækker baseret på en forespørgsel?

Det, du leder efter, er ar-extensions

Installer ædelstenen ved hjælp af

sudo gem install ar-extensions

Inkluder ædelstenen i dit miljø.rb (Eller direkte i den model, du vil lave indlæg med)

require 'ar-extensions'

Og indsæt flere poster i én INSERT forespørgsel ved hjælp af

fields = [:first_name, :last_name, :email]
data = [["glenn", "gillen", "[email protected]"],
       ["john", "jones", "[email protected]"],
       ["steve", "smith", "[email protected]"]]

User.import fields, data

Du kan også gøre det ved hjælp af ActiveRecord-objekter.

data = [ 
         User.new(:first_name => 'glenn', :last_name => 'gillen', :email => '[email protected]'),
         User.new(:first_name => 'john', :last_name => 'jones', :email => '[email protected]'),
         User.new(:first_name => 'steve', :last_name => 'smith', :email => '[email protected]')
       ]

User.import fields, data

3 nye rækker er blevet indsat i brugertabellen med kun den enkelte forespørgsel!

Mere om det her , her og her .



  1. Hvordan IFNULL() virker i MariaDB

  2. Sådan konverteres små bogstaver til store bogstaver i SQL Server - STORE ()

  3. MySQL-forespørgsel gået vild?

  4. Microsoft Access 2010, 2013, 2016 og 2019 Tutorial