Top-Themen

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 Anzahl Strings mit selbem Beginn

Frage Entwicklung Datenbanken

Mitglied: RedBullmachtfit

RedBullmachtfit (Level 1) - Jetzt verbinden

26.01.2011 um 16:52 Uhr, 3117 Aufrufe, 9 Kommentare

Wieviele Artikelnummern die mit derselben Zahl / Buchstabe anfangen sind in der Tabelle vorhanden

Hallo,
ich habe eine Artikelinfo (VB.NET 2010) aufgebaut, in welcher Anwender einfach die jeweilige
Artikelnummer eingeben können und der jeweilige Lagerbestand und Preise etc. ausgegeben werden.
Dahinter steht eine MySQL 5 Datenbank.
Die Artikelnummern beginnen mit "2.xxxxxx" oder z.B. "JU xxxxxx"

Gibt nun ein Anwender "JU 12" ein, sollen alle Artikel, die mit "JU 12xxxx" beginnen in ein Datagrid geschrieben werden,
wenn die Anzahl der Ergebnisse > 1 beträgt.
Die Abfrage lautet:
01.
SELECT a.art_nr, count(*) FROM artikel a WHERE a.art_nr LIKE 'JU 12%' GROUP BY a.art_nr
Hier bleibt Count bei 1, da ja jede Artikelnummer nur einmal existiert.

Was mache ich verkehrt bzw. wie lautet die Abfrage richtig?

Danke im Voraus!
Mitglied: EvilMoe
26.01.2011 um 17:43 Uhr
Das GROUP BY kannst du dir doch sparen, jede Nr ist nur einmal vorhanden also brauch doch nichts grupiert werden oder sehe ich das falsch?
Was ist denn nun das Problem, das Count 1 anzeiget aber mehr als eine Artikel Nr. mit JU 12 anfängt?
Bitte warten ..
Mitglied: RedBullmachtfit
26.01.2011 um 18:02 Uhr
Ja, ich dachte ich könnte nach dem Anfang des String Gruppieren. Also in dem Fall "JU 12".
Ich möchte einfach
1. die Anzahl der Artikel herausfinden, deren Artikelnummer mit dem String also wieder "JU 12" beginnen.
Also JU 12001, JU 12002 JU 12003 = 3 Artikel
2. diese drei Artikel in einem Datagrid darstellen, damit der Anwender per Klick auf einen Artikel die jeweiligen
Daten wie Lagerbestand und Preise sieht.
Bitte warten ..
Mitglied: EvilMoe
26.01.2011 um 18:19 Uhr
Wenn du das mit GROUP BY machst erhälst du immer "1", das ist auch korrekt. Denn für jede Artikelnummer hast du auch nur einen Treffer.
Wenn du allerdings die ganze Anzahl haben möchtest wieviele Artikelnummern mit "JU 12" anfangen musst du das GROUP BY weg lassen.
Bitte warten ..
Mitglied: 48507
26.01.2011 um 18:33 Uhr
01.
SELECT a.art_nr FROM artikel a WHERE a.art_nr LIKE 'JU 12%'
Die Anzahl der Datensätze wertest du dann in VB.NET 2010 aus.
Bitte warten ..
Mitglied: RedBullmachtfit
27.01.2011 um 08:52 Uhr
Okay, danke euch beiden schonmal. Die richtigen Artikel bekomme ich ja bereits.
Aber wie finde ich denn mi dem MySQL Connector die Anzahl der Ergebnisse heraus?
Ich will die Daten aus Performancegründen nicht grundsätzlich in das Datagrid laufen lassen, sondern nur wenn
mehrere Artikelnummern existieren die mit "JU 12xxxx" beginnen, damit der Benutzer den gewünschten per Mausklick auswählen kann.

01.
  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSearch.Click 
02.
        Dim conn As New MySqlConnection 
03.
        Dim myCommand As New MySqlCommand 
04.
        Dim myAdapter As New MySqlDataAdapter 
05.
        Dim mydatareader As MySqlDataReader 
06.
        Dim myString As String = "" 
07.
 
08.
        Dim SQL As String 
09.
 
10.
        SQL = "SELECT * FROM artikel a, lagerbestand l, preisstaffel p, preiseinheit pr, me_tab m WHERE a.art_nr LIKE '" & txtArtikel.Text & _ 
11.
            "%' AND a.art_lfdnr = l.lbs_artlfdnr AND a.art_preisnr = p.mes_nr AND a.art_preiskz = pr.pr_nr AND a.art_mekz1 = m.me_nr" 
12.
 
13.
        conn.ConnectionString = myConnString 
14.
        Try 
15.
            conn.Open() 
16.
            Try 
17.
                myCommand = conn.CreateCommand() 
18.
                myCommand.CommandType = CommandType.Text 
19.
                myCommand.CommandText = SQL 
20.
                mydatareader = myCommand.ExecuteReader(CommandBehavior.SingleRow) 
21.
                mydatareader.Read() 
22.
 
23.
                If mydatareader.HasRows Then 
24.
 
25.
                    myString = mydatareader("art_nr") 
26.
                    If Not IsDBNull(myString) Then 
27.
                        lblActiveArt.Text = Convert.ToString(myString) 
28.
                    End If 
29.
 
30.
                    myString = mydatareader("art_bez_001") 
31.
                    If Not IsDBNull(myString) Then 
32.
                        txtBez001.Text = Convert.ToString(myString) 
33.
                    Else 
34.
                        txtBez001.Text = String.Empty 
35.
                    End If 
36.
... 
37.
 
38.
                End If 
39.
            Catch myerror As MySqlException 
40.
                MsgBox("Fehler beim Lesen der Datenbank: " & myerror.Message) 
41.
            End Try 
42.
        Catch myerror As MySqlException 
43.
            MessageBox.Show("Fehler beim Verbindungsaufbau: " & myerror.Message) 
44.
        Finally 
45.
            If conn.State <> ConnectionState.Closed Then conn.Close() 
46.
        End Try 
47.
    End Sub
Bitte warten ..
Mitglied: 48507
27.01.2011 um 13:00 Uhr
Dann mach zuerst einen Count(*) und wenn er positiv ist, dann die eigentliche Abfrage. Außerdem kannst du Abfragen limitieren, mit einem "LIMIT 20" am Ende (20 Datensätze). VB.Net kenne ich leider nicht.
Bitte warten ..
Mitglied: RedBullmachtfit
27.01.2011 um 14:09 Uhr
Gute Idee mit dem Count ;)
Aber wie oben beschrieben bleibt ja Count bei 1, da jede Artikelnummer ja nur einmal existiert.
Ich muss wissen wieviele Datensätze mit dem BEGINN des Strings existieren.
Bitte warten ..
Mitglied: 48507
27.01.2011 um 14:35 Uhr
Mensch, ist doch kein Problem, hier ist dein Count:

01.
SELECT count(*) FROM artikel a WHERE a.art_nr LIKE 'JU 12%'
Bitte warten ..
Mitglied: RedBullmachtfit
27.01.2011 um 14:45 Uhr
Aaaaah, so hast du das gemeint!
Perfekt, ich danke dir!
Bitte warten ..
Ähnliche Inhalte
Datenbanken
MySQL Function Anzahl Datensätze ermitteln
gelöst Frage von MultiStormDatenbanken4 Kommentare

Hallo, aktuell stehe ich vor einem Problem bei dem ich nicht weiter komme. ich wollte mit eine MySQL funtion ...

Datenbanken
MySQL - Anzahl der Datensätze in Abfrage verringern
Frage von mabue88Datenbanken4 Kommentare

Hallo, ich habe ein System, in dem dessen Benutzer diverse Aktionen ausführen können. Die von den Benutzern ausgelösten Aktionen ...

Batch & Shell
Grep Textdatei nach mehreren Strings durchsuchen je String Anzahl der Zeilen ausgeben
gelöst Frage von cuilsterBatch & Shell8 Kommentare

Hallo lieber Foristen, Folgendes konnte ich bereits erfolgreich eruieren. Grep sucht in der Datei nach "ocsp" und spuckt mir ...

C und C++
Anzahl der Buchstaben in einem String Element Array C++
gelöst Frage von ProtectedC und C++3 Kommentare

Hallo, ich benötige Hilfe. Ich möchte gerne in den jeweiligen Elementen die Anzahl der Buchstaben zählen. Ich hatte an ...

Neue Wissensbeiträge
Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 10 StundenApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 15 StundenWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 15 StundenWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 1 TagInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...

Windows Server
SMBv1 deaktivieren führte zur Katastrophe, keine Domänenanmeldung mehr
Frage von Freak-On-SiliconWindows Server14 Kommentare

Servus; Habe Mist gebaut. Umgebung: Server 2012R2 Domäne 2x DC ~10 Memberserver (2012R2 und 2008R2) ~100 Windows 8 Clients ...

Windows XP
Windows XP Aktivieren geht nicht
Frage von tetikmiroWindows XP13 Kommentare

Hallo Ich habe einen Windows XP mit einen vCenter Converter umgezogen auf eine ESXI. Soweit funktioniert dies auch ohne ...

Grafikkarten & Monitore
2x 4K Monitore an einer GraKa betreiben
gelöst Frage von JollyJumper83Grafikkarten & Monitore10 Kommentare

Hallo liebe IT-Gemeinde, ich bin auf der Suche nach einer kostengünstigen GraKa für meinen Präsentations-PC. Wir möchten in unserem ...