Método fetchall (Python)

.fetchall (). Capta todos los casos (restantes) del conjunto de datos activo, o si hay divisiones, los casos restantes en la división actual. Si no quedan filas, el resultado es una tupla vacía.

  • Este método está disponible en modalidad de lectura o escritura.
  • Cuando se utiliza en modalidad de escritura, al llamar a fetchall se colocará el puntero de registro en el último caso del conjunto de datos activo, o si hay divisiones, el último caso de la división actual.
  • Los casos del conjunto de datos activo se devuelven como una lista de tuplas. Cada tupla representa los datos de un caso, y las tuplas se organizan en el mismo orden que los casos del conjunto de datos activo. Cada elemento de una tupla contiene el valor de datos para una variable específica. El orden de los valores de variable dentro de una tupla es el orden especificado por los valores de índice de variable en el argumento opcional n en la clase Cursor , o el orden de archivo si se omite n . Por ejemplo, si n= [5,2, 7] el primer elemento de tupla es el valor de la variable con el valor de índice 5, el segundo es la variable con el valor de índice 2 y el tercero es la variable con el valor de índice 7.
  • Los valores de serie se rellenan a la derecha con el ancho definido de la variable de serie.
  • Los valores perdidos del sistema siempre se convierten al tipo de datos Python Ninguno.
  • De forma predeterminada, los valores perdidos del usuario se convierten al tipo de datos Python Ninguno. Puede utilizar el método SetUserMissingInclude para especificar que los valores omitidos por el usuario se traten como válidos.
  • Los valores de las variables con formatos de hora se devuelven como enteros que representan el número de segundos desde la medianoche.
  • De forma predeterminada, los valores de las variables con formatos de fecha o fecha y hora se devuelven como enteros que representan el número de segundos a partir del 14 de octubre de 1582. Puede especificar que los valores de estas variables se conviertan en objetos Python datetime.datetime con el argumento cvtDates en la función spss.Cursor . Consulte el tema Clasespss.Cursor (Python) para obtener más información.
  • Si se ha definido una variable de ponderación para el conjunto de datos activo, los casos con valores cero, negativos o perdidos para la variable de ponderación se omiten al captar datos con fetchone, fetchallo fetchmany. Si necesita recuperar todos los casos cuando la ponderación está en vigor, puede utilizar la clase de conjunto de datos.
  • Los métodos fetchone, fetchally fetchmany respetan los filtros de mayúsculas y minúsculas especificados con los mandatos FILTER o USE .
DATA LIST FREE /var1 (F) var2 (A2)  var3 (F).
BEGIN DATA
11 ab 13
21 cd 23
31 ef  33
END DATA.
BEGIN PROGRAM.
import spss
dataCursor=spss.Cursor()
dataFile=dataCursor.fetchall()
for i in enumerate(dataFile):
  print i
print dataCursor.fetchall()
dataCursor.close()
END PROGRAM.

Resultado

(0, (11.0, 'ab', 13.0))
(1, (21.0, 'cd', 23.0))
(2, (31.0, 'ef', 33.0))
()

fetchall con índice de variables

DATA LIST FREE /var1 var2 var3.
BEGIN DATA
1 2 3
1 4 5
2 5 7
END DATA.
BEGIN PROGRAM.
import spss
i=[0]
dataCursor=spss.Cursor(i)
oneVar=dataCursor.fetchall()
uniqueCount=len(set(oneVar))
print oneVar
print spss.GetVariableName(0), " has ", uniqueCount, " unique values."
dataCursor.close()
END PROGRAM.

Resultado

((1.0,), (1.0,), (2.0,))
var1  has  2  unique values.