Inhaltsverzeichnis
Berechnen Sie die Anzahl der Besuche basierend auf Tagen
Verwenden Sie AUTO_INCREMENT
Heim Datenbank MySQL-Tutorial Notizen zur MySQL-Studie

Notizen zur MySQL-Studie

Jun 23, 2017 pm 02:54 PM
mysql 学习 笔记

Berechnen Sie die Anzahl der Besuche basierend auf Tagen

Erstellen Sie zunächst eine Tabelle und fügen Sie einige Daten ein Datum, an dem der Benutzer eine Website besucht hat.

mysql> Jahr JAHR(4),
-> Monat INT( 2) UNSIGNED ZEROFILL,
-> day INT(2) UNSIGNED ZEROFILL
-> );
Abfrage OK, 0 Zeilen betroffen (0,53 Sek.)

mysql> INSERT INTO t1 WERTE(2000,1,1) ,(2000,1,20),(2000,1,30),(2000,2,2),

-> 2,23);
Abfrage OK, 6 Zeilen betroffen (0,08 Sek.)
Datensätze: 6 Duplikate: 0 Warnungen: 0

mysql>

Kastanie: Abfrage der Anzahl der Besuchstage pro Monat (Duplikate werden nicht gezählt)

Die Operation ist wie folgt:

SELECT Jahr, Monat, BIT_COUNT(BIT_OR(1< ;

mysql> SELECT Jahr, Monat,

-> BIT_COUNT(BIT_OR(1<-> ;
+------+-----+
Jahr |
+------+--- ----+-----+
|. 3 |
+------+ -----+
2 Zeilen im Satz (0,00 Sek.)

mysql>

Portal Teilen Sie einen Blog, der BIT_COUNT() und BIT_OR() erklärt.

Es gibt einen anderen Teleporter, der die gleichen Bücher liest wie ich.

Überprüfen Sie die Daten in der Tabelle:

mysql> SELECT * FROM t1;

+------+- ------+------+

|. Monat |
+------+------+
|. 2000 |. 2000 |. 2000 | 02 |. 23 |
|. 2000 |. 23 |
+------+------+
6 Reihen im Satz (0,00 Sek.)

mysql>



Wenn Sie nach dem Lesen das Gefühl haben, dass Sie es nicht verstehen, hören Sie sich einfach meine Umgangssprache an.

Ich habe mir diesen Vorgang angesehen:

SELECT Jahr, Monat, BIT_COUNT(BIT_OR(1<

Ich glaube, die meisten Menschen haben zwei Zweifel im Kopf: Was machen BIT_OR() und BIT_COUNT()? Warum wird das immer noch gemacht?

Erklären wir zunächst die Funktion BIT_COUNT():

BIT_COUNT(N) gibt die Anzahl der Einsen in N (binär) zurück.

Ich schreibe eine Kastanie und Sie können es verstehen:

SELECT BIT_COUNT(100); Wie lautet die Antwort darauf?

Denken Sie an die binäre Darstellung von 100: 1100100

mysql> SELECT bin(100);

+----------+

|. 100) |

+----------+

|. 1100100 |

+----------+

1 Reihe im Satz (0,00 Sek.)

mysql>

Dann sollte die Antwort 3 sein?

mysql> SELECT BIT_COUNT(100);

+----------------+

| BIT_COUNT(100) |

+-- --+

|. 3 |

+----------------+

1 Zeile in set ( 0,00 Sek.)

mysql>

Junger Held, du hast wirklich ein gutes Sehvermögen, die Antwort ist 3.

Jetzt wissen Sie, was die Funktion BIT_COUNT() bewirkt.

Dann kommen wir zur zweiten Frage: Was macht BIT_OR()?

Auch wenn sie gleich aussehen, haben sie unterschiedliche Funktionen.

BIT_OR(expr) ist eine OR-Verknüpfung aller Felder in der expr-Spalte. Viele Blogs haben hier keine Beispiele für die Verwendung aufgeführt. oder vielleicht wissen sie sogar nicht, wie man es benutzt (sie wissen definitiv nicht, wie man es benutzt, hehehe)

Die vorherige Shop-Tabelle wird als Operation verwendet:

SELECT * FROM shop;

mysql> SELECT * FROM shop;

+---------+--------+-------+

|. Artikel |. Preis |

+ --------+------+|. 3,99 |. 0003 |. 0003 | 1,25 |. --------+--------+-------+

7 Reihen im Satz (0,06 Sek.)

Lassen Sie uns BIT_OR() für die Artikelspalte ausprobieren. Raten Sie vor dem Experiment, wie das Ergebnis aussehen soll?

0001

0001

0010

0011

0011

0011

ODER 0100

————————

0111

Soll das Ergebnis so sein?

mysql> SELECT BIT_OR(article) FROM shop;
+-----------------+
| +----+
|. 7 |
+------------------+
1 Zeile im Satz (0,00 Sek.)

mysql>

7 ist binär 0111, richtig, und egal wie viele 1 es in einer Zeile gibt, das Ergebnis ist 1

1 oder 1 oder 0 oder 1 = 1

Die Logik in dieser Frage ist: Egal wie oft ich sie heute besucht habe, ich habe diese Website besucht (der logische Ausdruck ist 1)

Lass uns zurückgehen und uns diesen Vorgang noch einmal ansehen:

SELECT Jahr, Monat, BIT_COUNT(BIT_OR(1<

Jetzt scheint es viel einfacher zu erklären. 1 Verschieben Sie die Anzahl der Tage nach links, und die entsprechende Anzahl von Ziffern stellt den Tag des Monats dar (64 Bit reichen ohnehin aus). Zum Beispiel ist heute 2017-06-02

1<<2 100, was bedeutet, dass ich diese Website heute besucht habe. Nach der OR-Verknüpfung des Tagesfelds erhielt ich eine 64-Bit-Binärdatei (ich glaube nicht, dass ich die Bedeutung dieser Zahl erklären muss). Dann habe ich die Funktion BIT_COUNT() zum Zählen verwendet und das gewünschte Ergebnis erhalten (es hat mich erschöpft). zu Tode) (๑•ᴗ•๑), ich habe es so lange aufgeschrieben, dass ich nicht weiß, ob ich es klar verstehe).

Verwenden Sie AUTO_INCREMENT

Hören Sie sich einfach den Namen an und Sie werden wissen, dass er automatisch hinzugefügt wird:

mysql> id MEDIUMINT NOT NULL AUTO_INCREMENT,

- > name CHAR(30) NOT NULL,
-> PRIMARY KEY(id)
->
Abfrage OK, 0 Zeilen betroffen (0,85 Sek.)

mysql> INSERT INTO Animals (Name) VALUES

- > ('dog'),('cat'),('pinguin'),

-('lax'),('whale'),( 'Strauß');
Abfrage OK, 6 Zeilen betroffen (0,13 Sek.)
Datensätze: 6 Duplikate: 0 Warnungen: 0

mysql> SELECT * FROM Animals;

+--- -+--------- +

|. id |
+----+---------+
| |. 2 |. 3 |. 4 |
|. -----+
6 Zeilen im Satz (0,00 Sek.)

mysql>

Erstellen Sie zunächst eine Tiertabelle mit den Feldern ID und Name. Die ID ist auf einen automatisch inkrementierenden Primärschlüssel festgelegt und beim Einfügen von Daten wird nur der Name geschrieben. Dann wird die ID automatisch ausgefüllt.


Es gibt auch einen Befehl, der den Startwert von AUTO_INCREMENT ändern kann.

Die Operation ist wie folgt:

ALTER TABLE

tbl_name

AUTO_INCREMENT = 2333;

to Fortsetzung folgt..

Das obige ist der detaillierte Inhalt vonNotizen zur MySQL-Studie. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHPs Fähigkeiten zur Verarbeitung von Big-Data-Strukturen PHPs Fähigkeiten zur Verarbeitung von Big-Data-Strukturen May 08, 2024 am 10:24 AM

Fähigkeiten zur Verarbeitung von Big-Data-Strukturen: Chunking: Teilen Sie den Datensatz auf und verarbeiten Sie ihn in Blöcken, um den Speicherverbrauch zu reduzieren. Generator: Generieren Sie Datenelemente einzeln, ohne den gesamten Datensatz zu laden, geeignet für unbegrenzte Datensätze. Streaming: Lesen Sie Dateien oder fragen Sie Ergebnisse Zeile für Zeile ab, geeignet für große Dateien oder Remote-Daten. Externer Speicher: Speichern Sie die Daten bei sehr großen Datensätzen in einer Datenbank oder NoSQL.

Wie optimiert man die MySQL-Abfrageleistung in PHP? Wie optimiert man die MySQL-Abfrageleistung in PHP? Jun 03, 2024 pm 08:11 PM

Die MySQL-Abfrageleistung kann durch die Erstellung von Indizes optimiert werden, die die Suchzeit von linearer Komplexität auf logarithmische Komplexität reduzieren. Verwenden Sie PreparedStatements, um SQL-Injection zu verhindern und die Abfrageleistung zu verbessern. Begrenzen Sie die Abfrageergebnisse und reduzieren Sie die vom Server verarbeitete Datenmenge. Optimieren Sie Join-Abfragen, einschließlich der Verwendung geeigneter Join-Typen, der Erstellung von Indizes und der Berücksichtigung der Verwendung von Unterabfragen. Analysieren Sie Abfragen, um Engpässe zu identifizieren. Verwenden Sie Caching, um die Datenbanklast zu reduzieren. Optimieren Sie den PHP-Code, um den Overhead zu minimieren.

Wie verwende ich MySQL-Backup und -Wiederherstellung in PHP? Wie verwende ich MySQL-Backup und -Wiederherstellung in PHP? Jun 03, 2024 pm 12:19 PM

Das Sichern und Wiederherstellen einer MySQL-Datenbank in PHP kann durch Befolgen dieser Schritte erreicht werden: Sichern Sie die Datenbank: Verwenden Sie den Befehl mysqldump, um die Datenbank in eine SQL-Datei zu sichern. Datenbank wiederherstellen: Verwenden Sie den Befehl mysql, um die Datenbank aus SQL-Dateien wiederherzustellen.

Wie füge ich mit PHP Daten in eine MySQL-Tabelle ein? Wie füge ich mit PHP Daten in eine MySQL-Tabelle ein? Jun 02, 2024 pm 02:26 PM

Wie füge ich Daten in eine MySQL-Tabelle ein? Mit der Datenbank verbinden: Stellen Sie mit mysqli eine Verbindung zur Datenbank her. Bereiten Sie die SQL-Abfrage vor: Schreiben Sie eine INSERT-Anweisung, um die einzufügenden Spalten und Werte anzugeben. Abfrage ausführen: Verwenden Sie die Methode query(), um die Einfügungsabfrage auszuführen. Bei Erfolg wird eine Bestätigungsmeldung ausgegeben.

So beheben Sie den Fehler „mysql_native_password nicht geladen' unter MySQL 8.4 So beheben Sie den Fehler „mysql_native_password nicht geladen' unter MySQL 8.4 Dec 09, 2024 am 11:42 AM

Eine der wichtigsten Änderungen, die in MySQL 8.4 (der neuesten LTS-Version von 2024) eingeführt wurden, besteht darin, dass das Plugin „MySQL Native Password“ nicht mehr standardmäßig aktiviert ist. Darüber hinaus entfernt MySQL 9.0 dieses Plugin vollständig. Diese Änderung betrifft PHP und andere Apps

Wie verwende ich gespeicherte MySQL-Prozeduren in PHP? Wie verwende ich gespeicherte MySQL-Prozeduren in PHP? Jun 02, 2024 pm 02:13 PM

So verwenden Sie gespeicherte MySQL-Prozeduren in PHP: Verwenden Sie PDO oder die MySQLi-Erweiterung, um eine Verbindung zu einer MySQL-Datenbank herzustellen. Bereiten Sie die Anweisung zum Aufrufen der gespeicherten Prozedur vor. Führen Sie die gespeicherte Prozedur aus. Verarbeiten Sie die Ergebnismenge (wenn die gespeicherte Prozedur Ergebnisse zurückgibt). Schließen Sie die Datenbankverbindung.

Wie erstelle ich eine MySQL-Tabelle mit PHP? Wie erstelle ich eine MySQL-Tabelle mit PHP? Jun 04, 2024 pm 01:57 PM

Das Erstellen einer MySQL-Tabelle mit PHP erfordert die folgenden Schritte: Stellen Sie eine Verbindung zur Datenbank her. Erstellen Sie die Datenbank, falls sie nicht vorhanden ist. Wählen Sie eine Datenbank aus. Tabelle erstellen. Führen Sie die Abfrage aus. Schließen Sie die Verbindung.

Der Unterschied zwischen Oracle-Datenbank und MySQL Der Unterschied zwischen Oracle-Datenbank und MySQL May 10, 2024 am 01:54 AM

Oracle-Datenbank und MySQL sind beide Datenbanken, die auf dem relationalen Modell basieren, aber Oracle ist in Bezug auf Kompatibilität, Skalierbarkeit, Datentypen und Sicherheit überlegen, während MySQL auf Geschwindigkeit und Flexibilität setzt und eher für kleine bis mittlere Datensätze geeignet ist. ① Oracle bietet eine breite Palette von Datentypen, ② bietet erweiterte Sicherheitsfunktionen, ③ ist für Anwendungen auf Unternehmensebene geeignet; ① MySQL unterstützt NoSQL-Datentypen, ② verfügt über weniger Sicherheitsmaßnahmen und ③ ist für kleine bis mittlere Anwendungen geeignet.

See all articles