2011-10-28 25 views

Respuesta

9

Hay arrays en PostgreSQL. Por ejemplo:

CREATE TABLE "token" (
    "id"  integer PRIMARY KEY, 
    "text"  text, 
    "category" text[] 
); 

ya se puede insertar varias categorías para cada fila en token:

INSERT INTO "token" ("id", "text", "category") 
VALUES (1, 'some text', ARRAY['cate1', 'cate2']); 

Usted puede encontrar las filas como:

SELECT * FROM "token" WHERE 'cate1' = ANY ("category"); 
+0

Si hago una consulta como SELECT * FROM 'símbolo DONDE categoría = 'cate1'', la consulta buscará dentro de la matriz? –

+0

@ RenatoDinhaniConceição No, puede usar el operador '@>' o ['ANY'] (http://www.postgresql.org/docs/9.0/interactive/functions-comparisons.html#AEN16871) hyperoperator en su lugar. – minhee

Cuestiones relacionadas