mySql HowTo: Verwendung von IF-Statements

mySql

 

Durch die Verwendung der IF()-Funktion in mySQL kann man sich oftmals weitere unnötige Abfragen sparen. In diesem kleinen HowTow möchte ich dies kurz an ein paar einfachen Beispielen zeigen, auch in Verwendung mit weiteren Funktionen, hier im konkreten Fall mit SUM(). Ich denke, das reicht aus, um das Prinzip leicht zu verstehen.

Generelle Syntax von IF():
SELECT IF (2 > 1, 'das ist wahr', 'das ist falsch')

Die Funkion hat also 3 Parameter. Der erste ist die Bedingung, der zweite der Wert, der zurückgegeben wird, wenn die Bedingung wahr ist und der dritte der Wert, der zurückgegeben wird, wenn die Bedingung falsch ist.
In obigem Beispiel ist die Bedingung ist wahr, deshalb wir also der erste Wert ausgegeben.

Beispiel 2:
SELECT IF (2 = 1, 'das ist wahr', 'das ist falsch')

Die Bedingung ist nun falsch, deshalb wir der zweite Wert ausgegeben.

Beispiel 3:
Wenn wir uns nun vorstellen, dass wir eine Tabelle haben, in der Kunden erfasst sind, die deren Stammdaten auch das Land, in dem sie wohnen, erfasst ist, dann wäre eine sinnvolle Abfrage, wieviel Kunden aus Deutschland bzw. wieviele Kunden aus dem Ausland kommen. Das könnten wir mit einem Count in 2 Abfragen mit where-Bedingung leicht herausfinden, es geht aber auch eleganter in einem Rutsch. Das sähe dann ungefähr so aus:

SELECT SUM(IF(country = 'Deutschland',1,0)) as kunden_deutsch,
SELECT SUM(IF(country != 'Deutschland',1,0)) as kunden_international
FROM customers

Beispiel 4:
Wir haben eine Tabelle mit Produkten aus verschiedenen Kategorien, auch der Preis ist hinterlegt in den Produktdaten.
Es gibt bei uns eine magische Grenze von 20 Euro, alles was über dieser Grenze liegt, wird von unseren Kunden als teuer eingestuft, alles was darunter liegt, wirkt auf unsere Kunden preiswert.
Es wäre schön, wenn wir nun schnell rausfinden könnten, wieviele preiswerte und wieviele teure Produkte es gibt. Diese Information möchten wir natürlich auch pro Kategorie visualisieren.

SELECT category
SUM(IF(price <= 20,1,0)) as preiswert,
SUM(IF(price > 20,1,0)) as teuer
FROM products
GROUP BY category

Das Ergebnis gibt die Summe der preiswerten und teuren Produkte gruppiert nach Kategorie aus.

Google URL-Shortener Service goo.gl

Google hat nun den eigenen URL-Shortener-Service http://goo.gl/ öffentlich gemacht und die dazugehörige Website gelauncht.
Ist man mit seinem Google-Account angemeldet, dann hat man auch Zugriff  auf Historie und Klick-Statistiken der angelegten Kurz-URLs.
Was auch cool ist: durch Anhängen der Endung „.qr“ an eine gekürzte URL erhält man automatisch einen QR-Code, den man schick zum Aufrufen von Web-Adressen mit Mobilgeräten verwenden kann, die eine Kamera (und die entsprechende Software) an Bord haben.
Der Dienst ist laut Matt Cutts schnell, stabil, sicher und verhält sich hinsichtlich 301/permanent-Redirects vorbildhaft.

kostenloses Vim-Tutorial mit dem Vim Tutor

Vim ist ein mächtiger und weit verbreiteter Editor. Er stellt quasi eine erweiterte Version des auf den meisten Unix-Systemen zur Verfügung stehenden Editors Vi dar. Die beste, allerdings relativ unbekannte Ressource zum Erlernen von Vim kommt direkt mit und ist kostenfrei. Einfach nur in den normalen Modus (also nach Aufrufen vom Kommando „vim“ oder im Edit-Modus nach Aufrufen von „vim filename.ext„) gehen und dann :! vimtutor eintippen.
Es erscheint der folgende Begrüßungs-Bildschirm:

Der VIM-Tutor

Der VIM-Tutor

Vim bietet dann einen ungefähr halbstündigen Praxiskurs an, in dem man alle wichtigen Funktionen und Kommandos kennenlernt – viel Spass!

Screenshots auf dem Mac mit Skitch

Skitch Screenshot-Tool

Skitch Screenshot-Tool

Weil ich heute zufällig darübergestolpert bin und man ja Software-Perlen, insbesondere wenn es sich um Software handelt, die man mehrmals täglich braucht, immer weiterempfehlen sollte: Skitch ist ein Tool zum Erstellen von Screenshots, und zwar ein ziemlich grandioses. Skitch ist sehr einfach zu bedienen und macht nach Klick auf „Snap“ auch genau das, was es soll – Screenshots. Hier wählt man entweder einen auszuwählenden Bereich oder fotografiert mit einem einzigen Klick ein ganzes Fenster. Danach kann man den Screenshot elegant bearbeiten, Text hinzufügen, mit Pfeilen versehen, bestimmte Stellen hervorheben, radieren und so weiter und so fort. Skitch hat eine Cloud-Anbindung, im Zusammenspiel mit dem Webdienst skitch.com kann man Screenshots mit einem Klick uploaden.

Hier könnt Ihr noch eine kleine Einführung anschauen, die Bedienung des Tools ist wirklich so einfach wie gezeigt, ich bin begeistert.

iTunes Mediathek komplett mit logischer Verbindung zu iPhone/iPod/iPad auf anderen Mac umziehen

iTunes 10 Icon

Wer kennt es nicht und wen nervt es nicht: iPhone, iPod und iPad lassen sich nur mit einem einzigen Mac synchronisieren.
Beim Verbinden mit einen anderen Mac möchte iTunes die Löschung der Inhalte auf dem iPhone/iPod/iPad erzwingen, wenn man es mit diesem syncen will. Es gibt allerdings durchaus einen inoffiziellen Weg, wie man es schafft, seine iTunes Mediathek mit der logischer Verbindung zum Mobilgerät auf einen anderen Mac umzuziehen.
Dazu geht Ihr wie folgt vor:

1. Auf beiden Macs muss zwingend die gleiche iTunes-Version installiert sein
2. iPhone/iPod/iPad dürfen nicht verbunden sein
3. Auf beiden Macs iTunes beenden (inklusive aller Prozesse)
4. Auf dem „Quell-Mac“ wird das iTunes-Verzeichnis kopiert (/Users/<dein benutzername>/Music/iTunes)
5. Auf dem „Quell-Mac“ die iPhone/iPod/iPad-Backups kopieren (/Users/<dein benutzername>/Library/Application Support/MobileSync)
6. Auf dem „Quell-Mac“ die iTunes-Settings kopieren (alle Files, die mit /Users/<dein benutzername>/Library/Preferences/com.apple.iTunes beginnen)
7. Alle Daten auf den „Ziel-Mac“ an die gleichen Stellen kopieren
8. iTunes auf dem „Ziel-Rechner“ öffnen und iPhone/iPod/iPad anschließen

Favicons mit transparentem Hintergrund – so klappt die Erstellung

Das Erstellen von Favicons mit transparentem Hintergrund kann mit den gängigen Web-Diensten zum Problem werden, wie ich festgestellt habe. Allerdings braucht man genau diese immer öfter, da sie auch als Shortcurt auf dem Desktop und so weiter abgelegt werden können – und dies sieht häßlich aus, wenn keine Transparenz vorhanden ist. Nach etlichem Rumprobieren hab ich’s nun direkt mit Photoshop hinbekommen. Vielleicht hilft’s ja dem ein oder anderem, hier also folgt die kurze Anleitung:

1. Ladet Euch das ICO-Format-Plugin von telegraphics.com.au runter, in dem Archiv, das Ihr erhaltet, findet Ihr eine Datei mit der Endung .8bi
2. Diese Datei legt Ihr in das <Photoshop-Installationsverzeichnis>/plug-ins/fileformats/ Verzeichnis. Es gibt von dem Plugin übrigens auch eine OS X-Version.
3. Nach dem Neustart von Photoshop könnt Ihr Euch nun Euer Bild mit dem speichern-unter-Dialog auch im .ico-Format abspeichern.

Mit der beschriebenen Vorgehensweise wurde bei meinen Versuchen erfolgreich die Transparenz erhalten, juhu, mission accomplished.

Icons ändern unter OS X

iTunes 10 Icon

iTunes 10 Icon

Apple hat ja mit iTunes 10 das neue super-häßliche iTunes-Icon eingeführt. Steve Jobs gefällt es angeblich, beim Rest dert Welt kommt es nicht so besonders gut an, auch bei mir nicht. dazu gibt es zahllose Diskussionen im Netz. Schaut Euch mal hier zum Beispiel die Reaktionen bei Twitter an..
Also gibt’s hier heute dazu passend ein kleines How-To zum Ändern von Icons auf dem Mac, vielleicht hat das der ein oder andere noch nicht gemacht.

Um ein Icon unter OS X zu ändern, geht Ihr folgendermaßen vor:

– Wählt im Finder die Applikation, das Laufwerk, den Ordner oder das File, dessen Icon Ihr für ein anderes verwenden möchtet, aus und markiert es mit einem Klick.

– Drückt cmd+i, um das Info-Fenster zu öffnen (oder Ablage/Informationen aus dem Menü)

– Im Info-Fenster könnt Ihr nun das Icon oben links durch einen Klick markieren

– Mit cmd+c (oder Bearbeiten/kopieren aus dem Menü) wird das Icon in die Zwischenablage kopiert

–  Wählt im Finder die Applikation, das Laufwerk, den Ordner oder das File, dessen Icon Ihr mit der Kopie aus der Zwischenablage ersetzen möchtet, aus und markiert es mit einem Klick.

– Drückt cmd+i, um das Info-Fenster zu öffnen (oder Ablage/Informationen aus dem Menü)

– einfacher Klick auf das Icon links oben im Info-Fenster

– Mit cmd+v (oder Bearbeiten/einfügen aus dem Menü) wird das Icon ersetzt

CSS3: box-shadow für schöne Schatten-Effekte

Schöne neue CSS-Welt. Mit CSS3 wurde box-shadow eingeführt, mit dem man Elementen einen Schatteneffekt verpassen kann. Man hat dabei den praktischen Vorteil, dass sich der Schatten bei Größenänderung automatisch an die Box anpasst und sich bei Verwendung von abgerundeten Ecken mit border-radius ebenfalls abrundet. Supported wird box-shadow von Safari (ab 3.1), Firefox (ab 3.5), Chrome und Opera (ab 10.5). CSS-Chatten nehmen üblicherweise 3 Werte (horizontal offset, vertical offset, blur) und eine Farbe. Die Offset-Werte können positiv oder negativ sein, es ist auch möglich mehrere Schatten-Effekte zu verwenden, die Werte-Angabe werden dann einfach mehrfach nacheinender im CSS notiert. Es ist einiges möglich, es empfiehlt sich, etwas damit herumzuspielen, macht Spaß.

Hier findet Ihr die W3C-Spezifikation.

Und hier habe ich eine kleine Beispielseite zum Thema box-shadow für Euch.

Anordnung der WindowControl-Buttons in iTunes 10 ändern

Mit der Einführung von iTunes 10 ordnet Apple aus irgendwelchen Gründen plötzlich die Window-Control-Buttons (Zoom/Minimize/Close) der Applikation nicht mehr nebeneinander, sondern untereinander an.

Window-Control-Buttons in iTunes 10

Window-Control-Buttons in iTunes 10W

Wen das genauso stört wie mich, der kann die Anordnung mittels Terminal leicht anpassen.

Anordnung der Icons nebeneinander durch Terminalbefehl:
defaults write com.apple.iTunes full-window -boolean YES

Anordnung der Icons nebeneinander durch Terminalbefehl:
defaults write com.apple.iTunes full-window -boolean NO