Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

MySQL - SELECT und IF in Funktion

Frage Entwicklung Datenbanken

Mitglied: mabue88

mabue88 (Level 2) - Jetzt verbinden

31.08.2014, aktualisiert 13:57 Uhr, 1219 Aufrufe, 2 Kommentare

Hallo,

ist es möglich eine SELECT-Abfrage als Bedingung in einer IF-Abfrage zu verwenden?

Das Problem löse ich aktuell so:

01.
FUNCTION `TestFunktion`(my_value VARCHAR(16)) RETURNS tinyint(1) 
02.
BEGIN 
03.
	DECLARE my_count INT; 
04.
 
05.
	SELECT COUNT(*) INTO my_count 
06.
	FROM test_tabelle 
07.
	WHERE value = my_value; 
08.
 
09.
	IF my_count > 0 THEN 
10.
		RETURN true; 
11.
	ELSE 
12.
		RETURN false; 
13.
	END IF; 
14.
END
Aber es gibt doch bestimmt eine Möglichkeit, bei der nicht zuerst eine Variable deklariert, die Abfrage durchgeführt und dann erst die Entscheidung mit der IF-Abfrage kommt...

Wie würdet ihr so eine Abfrage in der Funktion gestalten?

Danke
mabue
Mitglied: emeriks
LÖSUNG 31.08.2014, aktualisiert um 13:57 Uhr
Hi,
das müsste mit CASE gehen. Etwa so:

01.
SELECT   Test = 
02.
      CASE COUNT(*) 
03.
         WHEN 0 THEN FALSE 
04.
         ELSE TRUE 
05.
      END, 
06.
   Name 
07.
FROM test_tabelle 
08.
WHERE value = my_value
Das stimmt do noch nicht ganz, aber irgendwie in diese Richtung geht das.

E.
Bitte warten ..
Mitglied: mabue88
31.08.2014 um 13:59 Uhr
Hallo emeriks,

das war ein sehr guter Tipp! So klappt die Abfrage:

01.
	SELECT  
02.
		CASE COUNT(*) 
03.
			WHEN 0 THEN FALSE 
04.
			ELSE TRUE 
05.
		END 
06.
	FROM test_tabelle 
07.
	where value = my_value;
Bitte warten ..
Ähnliche Inhalte
Visual Studio
Sortierung von DataTable nach Select aufgelöst (1)

Frage von ForgottenRealm zum Thema Visual Studio ...

Batch & Shell
gelöst Powershell select-string -pattern (2)

Frage von LianenSchwinger zum Thema Batch & Shell ...

Datenbanken
MySQL bearbeiten - Rechte auf User ändern (6)

Frage von istike2 zum Thema Datenbanken ...

Batch & Shell
gelöst Powershell: Select-String erzeugt nicht das gewünschte Ergebnis (7)

Frage von MuHMuH zum Thema Batch & Shell ...

Neue Wissensbeiträge
Erkennung und -Abwehr

Infineon TPMs unsicher! Bitlocker ggf. angreifbar

Information von Lochkartenstanzer zum Thema Erkennung und -Abwehr ...

Firewall

PfSense Repository für Version 2.3.x

(3)

Information von Dobby zum Thema Firewall ...

LAN, WAN, Wireless

WPA-2 hat erste Risse: KRACK

(7)

Information von the-buccaneer zum Thema LAN, WAN, Wireless ...

Hardware

GPD Pocket: Winziger Laptop für Wenig Tipper

(1)

Information von pelzfrucht zum Thema Hardware ...

Heiß diskutierte Inhalte
Windows Server
gelöst Gruppenrichtlinie greift nicht zu! (23)

Frage von Syosse zum Thema Windows Server ...

Microsoft Office
ICH BIN AM ENDE MEINES IT-WISSENS ANGELANGT!!!! (21)

Frage von KINGCELLO zum Thema Microsoft Office ...

Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...