简体   繁体   中英

Inserting rows to a table from another SELECT - MySQL

I have a table called CountriesList with ID and Country columns.
I have another table called Entries which have a column named Country .

I would like to INSERT all the countries in Entries into CountriesList... I am using the following syntax:

INSERT INTO CountriesList ('Country') 
SELECT DISTINCT ('Country')
FROM  `Entries`

However, I get

1064 - You have an error in your SQL syntax

What is wrong with the syntax?

Don't mix up single quotes ( ' ) and backticks ( ` ).

Backticks are for database and column names.

Single quotes are used for strings.

INSERT INTO `CountriesList`
(`Country`) 
SELECT DISTINCT `Country` FROM `Entries`
Insert into entries(country) 

     select distinct(country) from 

    countrylist where country not in

     (select country from entries)

It should be -

INSERT INTO CountriesList
(Country) 
SELECT DISTINCT Country FROM  Entries

尝试将此插入项(国家/地区)中,从CountrysList选择国家

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM