SQlite: seleccionar en?


80

No estoy seguro de poder usar select into para importar datos de otra tabla como esta:

select * into
  bookmark1 
from bookmark;    

¿Es cierto que SQlite no admite esta sintaxis? ¿Hay otras alternativas?

Respuestas:


51

Puedes probar esta consulta:

insert into bookmark1 select * from bookmark

12
Esto supone que el marcador1 ya existe, mientras que seleccionar en crea una nueva tabla.
vit

@vit, sí por supuesto. Es para el caso que queremos importar nuevamente en una tabla.
Nick Dandoulakis

@Nick: Estoy seguro de que lo sabe, solo pensé que esto debería quedar claro para cualquiera por qué puede tropezar con esta pregunta más adelante. :)
vit

182

Podrías hacerlo:

create table bookmark1 as select * from bookmark;

2
Lo siento, no puedo dar ningún punto porque soy nuevo, pero tu sugerencia funciona bien. Gracias =)
Glaucon

3
Respuesta perfecta y concisa y al grano. +1 y muchas felicitaciones.
zeFree

alguna forma de hacer que esto funcione en dos situaciones, donde la tabla ya existe (sobrescribir) y donde no (crear una nueva tabla)?
oob

¡Esta es en realidad una mejor respuesta que la aceptada como respuesta!
MelloG

1
@Glaucon ahora puede votar esta respuesta y seleccionarla como la respuesta aceptada. Ayudará a todos los que vengan aquí
Avision

22

Supongo que bookmark1 es una nueva tabla que ha creado, que es la misma que la tabla de marcadores. En ese caso, puede utilizar el siguiente formato.

CREATE TABLE bookmark1 AS SELECT * FROM bookmark;

O también puede usar la declaración de inserción con subconsulta. Para conocer las diferentes opciones de declaración de inserción, consulte: SQL entendido por SQLite


11
create table NewTable as
select * from OldTable where 1 <> 1

Esto copiará la estructura de datos por usted.


1
Esto es bastante inteligente.
TheLegendaryCopyCoder

envuelva este SQL en un bloque de prueba (o construcción equivalente) en el lenguaje de programación de su elección.
knb
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.