PythonQ 240-8XX Manual de usuario Pagina 415

  • Descarga
  • Añadir a mis manuales
  • Imprimir
  • Pagina
    / 768
  • Tabla de contenidos
  • MARCADORES
  • Valorado. / 5. Basado en revisión del cliente
Vista de pagina 414
394 MySQL - Technische Referenz f¨ur Version 5.0.1-alpha
Bei einem Wert, der mehr als ein SET-Element enth¨alt, spielt es keine Rolle, in welcher
Reihenfolge die Elemente aufgelistet sind, wenn Sie den Wert einf¨ugen. Es spielt ebenfalls
keine Rolle, wie oft ein gegebenes Element im Wert aufgelistet ist. Wenn der Wert sp¨ater
a/jointfilesconvert/293675/bgerufen wird, erscheint jedes Element im Wert einmal, wobei die Elemente in der Rei-
henfolge erscheinen, in der sie bei der Tabellenerzeugung festgelegt wurden. Wenn eine
Spalte beispielsweise als SET("a","b","c","d") festgelegt ist, erscheinen "a,d", "d,a"
und "d,a,a,d,d" als "a,d", wenn sie a/jointfilesconvert/293675/bgerufen werden.
SET-Werte werden numerisch sortiert. NULL-Werte werden vor Nicht-NULL-SET-Werten ein-
sortiert.
Normalerweise f¨uhrt man SELECT auf eine SET-Spalte mit dem LIKE-Operator oder der
FIND_IN_SET()-Funktion aus:
mysql> SELECT * FROM tabelle WHERE set_spalte LIKE ’%wert%’;
mysql> SELECT * FROM tabelle WHERE FIND_IN_SET(’wert’,set_spalte)>0;
Aber auch folgendes funktioniert:
mysql> SELECT * FROM tabelle WHERE set_spalte = ’wert1,wert2’;
mysql> SELECT * FROM tabelle WHERE set_spalte & 1;
Das erste dieser Statements sucht nach einer exakten
¨
Ubereinstimmung, das zweite sucht
Werte, die das erste SET-Element enthalten.
Wenn Sie alle oglichen Werte einer SET-Spalte erhalten wollen, benutzen Sie: SHOW
COLUMNS FROM tabelle LIKE set_spalte und gehen die SET-Definition in der zweiten
Spalte durch.
7.2.4 Den richtigen Typ f¨ur eine Spalte ausw¨ahlen
Um oglichst effizient zu speichern, benutzen Sie in jedem Fall den pr¨azisesten Typ. Wenn
zum Beispiel eine Ganzzahl-Spalte f¨ur Werte im Bereich zwischen 1 und 99999 benutzt
wird, ist MEDIUMINT UNSIGNED der beste Typ.
Akkurate Darstellung monet¨arer Werte ist ein aufiges Problem. In MySQL sollten
Sie den DECIMAL-Typ benutzen. Dieser wird als Zeichenkette gepeichert, weshalb kein
Genauigkeitsverlust auftreten sollte. Wenn Genauigkeit nicht allzu wichtig ist, sollte auch
der DOUBLE-Typ ausreichen.
Um hohe Pr¨azision zu erzielen, onnen Sie immer auch in einen Festkommawert umwan-
deln, der in einer BIGINT gespeichert wird. Das erlaubt Ihnen, alle Berechnungen mit
Ganzzahlen durchzuf¨uhren und die Ergebnisse nur wenn notwendig in Fließkommawerte
zur¨uckzuwandeln.
7.2.5 Spaltentypen anderer Datenbanken benutzen
Um es einfacher zu machen, Code zu verwenden, der f¨ur SQL-Implementationen anderer
Hersteller geschrieben wurde, ordnet (mappt) MySQL Spaltentypen zu wie in unten stehen-
der Tabelle dargestellt. Diese Mappings machen es leichter, Tabellendefinitionen anderer
Datenbanken nach MySQL zu verschieben:
Typ anderer Hersteller MySQL-Typ
BINARY(NUM) CHAR(NUM) BINARY
Vista de pagina 414
1 2 ... 410 411 412 413 414 415 416 417 418 419 420 ... 767 768

Comentarios a estos manuales

Sin comentarios