Merge branch 'main' of https://gitea.sriwoldt.de/Sven/Snippets
This commit is contained in:
+6
-1
@@ -182,4 +182,9 @@ bpy.context.scene.collection.objects.link(mesh_obj)
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
https://www.youtube.com/watch?v=N3U2noAHgBo&t=88s
|
https://www.youtube.com/watch?v=N3U2noAHgBo&t=88s
|
||||||
|
|
||||||
|
## Farben für Mesh und Vertex
|
||||||
|
|
||||||
|
Preferences --> Themes --> 3D View
|
||||||
|
|
||||||
|
|||||||
@@ -25,11 +25,15 @@ Zum Beispiel hier ist eine **Verkäufe**-Tabelle:
|
|||||||
|
|
||||||
Um alle Datensätze mit der Coin „AGK“ abzurufen, schreibt man:
|
Um alle Datensätze mit der Coin „AGK“ abzurufen, schreibt man:
|
||||||
|
|
||||||
`SELECT * FROM sales WHERE coin = 'AGK'`
|
```sql
|
||||||
|
SELECT * FROM sales WHERE coin = 'AGK'
|
||||||
|
```
|
||||||
|
|
||||||
Um alle Datensätze mit `amount` kleiner oder gleich 20 abzurufen, schreibt man:
|
Um alle Datensätze mit `amount` kleiner oder gleich 20 abzurufen, schreibt man:
|
||||||
|
|
||||||
`SELECT * FROM sales WHERE amount <= 20`
|
```sql
|
||||||
|
SELECT * FROM sales WHERE amount <= 20
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -65,7 +69,9 @@ Zum Beispiel betrachte man die folgende **people**-Tabelle:
|
|||||||
| Polar | 23 | männlich |
|
| Polar | 23 | männlich |
|
||||||
| Loopa | 18 | weiblich |
|
| Loopa | 18 | weiblich |
|
||||||
|
|
||||||
`SELECT * FROM people WHERE NOT gender = 'male'`
|
```sql
|
||||||
|
SELECT * FROM people WHERE NOT gender = 'male'
|
||||||
|
```
|
||||||
|
|
||||||
Dies wird das Ergebnis sein:
|
Dies wird das Ergebnis sein:
|
||||||
|
|
||||||
@@ -76,9 +82,11 @@ Dies wird das Ergebnis sein:
|
|||||||
|
|
||||||
Das `NOT`-Schlüsselwort kehrt die Bedingung im Wesentlichen um. Zum Beispiel sind die folgenden Abfragen gleich:
|
Das `NOT`-Schlüsselwort kehrt die Bedingung im Wesentlichen um. Zum Beispiel sind die folgenden Abfragen gleich:
|
||||||
|
|
||||||
`WHERE age > 20`
|
```sql
|
||||||
|
WHERE age > 20```
|
||||||
|
|
||||||
`WHERE NOT age <= 20`
|
```sql
|
||||||
|
WHERE NOT age <= 20```
|
||||||
|
|
||||||
### AND
|
### AND
|
||||||
|
|
||||||
@@ -96,7 +104,9 @@ Zum Beispiel ist hier eine `people`-Tabelle:
|
|||||||
|
|
||||||
Die folgende Abfrage:
|
Die folgende Abfrage:
|
||||||
|
|
||||||
`SELECT * FROM people WHERE gender = "female" AND age < 20`
|
```sql
|
||||||
|
SELECT * FROM people WHERE gender = "female" AND age < 20
|
||||||
|
```
|
||||||
|
|
||||||
bedeutet, dass man nach allen Datensätzen sucht, bei denen das Geschlecht „female“ ist und das Alter kleiner als 20 ist.
|
bedeutet, dass man nach allen Datensätzen sucht, bei denen das Geschlecht „female“ ist und das Alter kleiner als 20 ist.
|
||||||
|
|
||||||
@@ -120,7 +130,9 @@ Zum Beispiel betrachtet man die folgende **people**-Tabelle:
|
|||||||
| Polar | 23 | male |
|
| Polar | 23 | male |
|
||||||
| Loopa | 18 | female |
|
| Loopa | 18 | female |
|
||||||
|
|
||||||
`SELECT * FROM people WHERE gender = 'female' OR age < 20`
|
```sql
|
||||||
|
SELECT * FROM people WHERE gender = 'female' OR age < 20
|
||||||
|
```
|
||||||
|
|
||||||
Diese Abfrage bedeutet, dass man nach allen Datensätzen sucht, bei denen entweder das Geschlecht weiblich ist oder das Alter unter 20 liegt.
|
Diese Abfrage bedeutet, dass man nach allen Datensätzen sucht, bei denen entweder das Geschlecht weiblich ist oder das Alter unter 20 liegt.
|
||||||
|
|
||||||
@@ -140,7 +152,9 @@ Das Erstellen einer Abfrage mit nur einer Bedingung ist nicht ausreichend. Manch
|
|||||||
|
|
||||||
Die AND und OR Schlüsselwörter werden wie folgt verwendet:
|
Die AND und OR Schlüsselwörter werden wie folgt verwendet:
|
||||||
|
|
||||||
`SELECT col1, col2 FROM table1 WHERE condition1 AND condition2 OR condition3 ...`
|
```sql
|
||||||
|
SELECT col1, col2 FROM table1 WHERE condition1 AND condition2 OR condition3 ...
|
||||||
|
```
|
||||||
|
|
||||||
Man kann so viele Bedingungen wie man will zusammen stapeln.
|
Man kann so viele Bedingungen wie man will zusammen stapeln.
|
||||||
###################
|
###################
|
||||||
@@ -252,4 +266,85 @@ IN ist die vereinfachte Schreibweise für OR. Hier wird jeder Begriff, die per K
|
|||||||
|
|
||||||
## BETWEEN
|
## BETWEEN
|
||||||
|
|
||||||
BETWEEN vereinfacht die Abfrage >= OR =<. D.h.
|
Anstatt zu schreiben:
|
||||||
|
|
||||||
|
```sql
|
||||||
|
WHERE col1 >= 5 AND col1 <= 10
|
||||||
|
```
|
||||||
|
|
||||||
|
Kann man folgendes schreiben:
|
||||||
|
|
||||||
|
```sql
|
||||||
|
WHERE col1 BETWEEN 5 AND 10
|
||||||
|
```
|
||||||
|
|
||||||
|
Der `BETWEEN`-Operator ist inklusiv, was bedeutet, dass er die Grenzwerte (in diesem Fall 5 und 10) in die Ergebnisse einschließt. Dies macht die SQL-Abfragen sauberer und lesbarer, insbesondere bei der Arbeit mit Datumsbereichen oder numerischen Intervallen.
|
||||||
|
|
||||||
|
## LIKE
|
||||||
|
|
||||||
|
Das `LIKE`-Schlüsselwort wird verwendet, um Ähnlichkeiten von Zeichenketten zu prüfen. Beispielsweise, wenn wir alle Datensätze abrufen möchten, deren Name mit dem Buchstaben `a` beginnt, dann verwenden wir das `LIKE`-Schlüsselwort.
|
||||||
|
|
||||||
|
Zwei Hauptwildcards werden verwendet:
|
||||||
|
|
||||||
|
- `%` - steht für eine beliebige Anzahl von Zeichen
|
||||||
|
- `_` - steht für genau ein Zeichen
|
||||||
|
|
||||||
|
Zum Beispiel:
|
||||||
|
|
||||||
|
- `%a` - bedeutet jede Zeichenkette, die mit `a` endet
|
||||||
|
- `a%` - bedeutet jede Zeichenkette, die mit `a` beginnt
|
||||||
|
|
||||||
|
- `%a%` - bedeutet jeder String, der `a` enthält
|
||||||
|
- `_a%` - bedeutet, dass der Buchstabe `a` der zweite Buchstabe im String ist
|
||||||
|
|
||||||
|
- `%a__` - bedeutet, dass der String `a` an der drittletzten Stelle enthält
|
||||||
|
|
||||||
|
Um es zu verwenden, schreiben wir:
|
||||||
|
|
||||||
|
```sql
|
||||||
|
SELECT col1, col2, ...
|
||||||
|
FROM table1
|
||||||
|
WHERE col1 LIKE '%a__'
|
||||||
|
```
|
||||||
|
|
||||||
|
**Beispiel**
|
||||||
|
|
||||||
|
Suche aller Personen deren Name mit Gross-K beginnt und mit klein-a endet, sortiert nach Name in absteigender Reihenfolge
|
||||||
|
|
||||||
|
```sql
|
||||||
|
select * from people where name like 'K%a' order by name desc;
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Tabelle anlegen
|
||||||
|
|
||||||
|
CREATE TABLE Persons (
|
||||||
|
PersonID int PRIMARY KEY,
|
||||||
|
LastName varchar(255) NOT NULL,
|
||||||
|
FirstName varchar(255),
|
||||||
|
Address varchar(255),
|
||||||
|
City varchar(255)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
| **Datentyp** | **MySQL-Format** | **PostgreSQL-Format** | **INSERT INTO Beispiel** |
|
||||||
|
| :---------------------------------------------------: | :------------------------------------------: | :------------------------------------------: | :----------------------------------------------------------: |
|
||||||
|
| **Zeichenkette (TEXT, VARCHAR, CHAR usw.)** | Eingeschlossen in einfache Anführungszeichen | Eingeschlossen in einfache Anführungszeichen | `INSERT INTO tableName (columnName) VALUES ('John Doe');` |
|
||||||
|
| **Zahl (Ganzzahl, Dezimalzahl, Gleitkommazahl usw.)** | Keine Anführungszeichen | Keine Anführungszeichen | `INSERT INTO tableName (columnName) VALUES (25);` |
|
||||||
|
| **Boolescher Wert** | WAHR oder FALSCH (oder 1 und 0) | WAHR oder FALSCH | `INSERT INTO tableName (columnName) VALUES (TRUE);` |
|
||||||
|
| **Datum, Uhrzeit und Zeitstempel** | JJJJ-MM-TT HH:MM:SS | JJJJ-MM-TT HH:MM:SS | `INSERT INTO tableName (dateTimeColumn) VALUES ('2023-08-18 12:45:00');` |
|
||||||
|
|
||||||
|
## Bestimmte Zeilen aus einer Tabelle kopieren
|
||||||
|
|
||||||
|
Wenn man bestimmte Zeilen basierend aus einer Bedingung kopieren möchten, kann man die `SELECT`Anweisung mit . kombinieren `INSERT INTO`.
|
||||||
|
|
||||||
|
**Syntax** :
|
||||||
|
|
||||||
|
```sql
|
||||||
|
INSERT INTO table_name1
|
||||||
|
SELECT columns FROM table_name2 WHERE condition;
|
||||||
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user