---
title: "INSERT INTO med både SELECT o VALUES"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/170447-insert-into-med-både-select-o-values"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "fredrik_kratz"
published: "2008-04-03T11:55:45.000Z"
updated: "2008-04-03T14:04:10.000Z"
replies: 4
views: 595
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/170447-insert-into-med-både-select-o-values"
---

# INSERT INTO med både SELECT o VALUES

## #1 — fredrik_kratz, 2008-04-03T11:55Z

Vill dels läsa in data till en tabell från en annan men även läsa in värden (som man vanligtvis görs via VALUES). 

Följande fungerar då jag enbart läser in ID från tabellen MoteBasdata till kolumnen MotesID i tabellen OvningsDataMM:

INSERT INTO OvningsDataMM ( MotesID )
SELECT MoteBasdata.ID
FROM MoteBasdata
WHERE MoteBasdata.Malgrupp='pepsi';

Men om jag sedan vill lägga in mer i OvningsDataMM (som tex Person) så blir det fel. Jag tyckte att det borde vara i form av:

INSERT INTO OvningsDataMM ( MotesID, Person  )
(SELECT MoteBasdata.ID
FROM MoteBasdata
WHERE MoteBasdata.Malgrupp='pepsi'),'Erik';

Men så funkar det tydligen inte! 

Hur ska jag göra för att få till denna SQL-str ...

Permalänk: https://www.webforum.nu/p/170447

## #2 — Koplik, 2008-04-03T12:00Z

```
INSERT INTO OvningsDataMM ( MotesID, Person  )
(SELECT MoteBasdata.ID, 'Erik'
FROM MoteBasdata
WHERE MoteBasdata.Malgrupp='pepsi')
```

bör fungera. Dock kommer alla heta erik då.

Permalänk: https://www.webforum.nu/p/2095519

## #3 — metalboy, 2008-04-03T12:02Z

Testa med

```
INSERT INTO OvningsDataMM ( MotesID, Person ) VALUES ((SELECT MoteBasdata.ID FROM MoteBasdata WHERE MoteBasdata.Malgrupp='pepsi'), 'Erik')
```

Permalänk: https://www.webforum.nu/p/2095521

## #4 — Koplik, 2008-04-03T13:42Z

> **metalboy skrev:**
>
> Testa med
>
>
> ```
> INSERT INTO OvningsDataMM ( MotesID, Person ) VALUES ((SELECT MoteBasdata.ID FROM MoteBasdata WHERE MoteBasdata.Malgrupp='pepsi'), 'Erik')
> ```

Resulterar inte det i en sats som ser ut ungefär såhär i klartext:

```
INSERT INTO OvningsDataMM ( MotesID, Person ) VALUES (1,2,3,7,6,5,8, 'Erik')
```

Eller tänker jag fel?

Permalänk: https://www.webforum.nu/p/2095534

## #5 — LarsG, 2008-04-03T14:04Z

Nja, om man har en subselect i values på det sättet så skall det bli fel om selecten retrurnerar mer än en post.

Permalänk: https://www.webforum.nu/p/2095541

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/170447-insert-into-med-både-select-o-values
