Ich möchte die längste VARCHAR
in einer bestimmten Spalte einer SQL Server-Tabelle finden.
Hier ist ein Beispiel:
ID = INT IDENTITY
DESC = VARCHAR(5000)
ID | Desc
---|-----
1 | a
2 | aaa
3 | aa
Was ist die SQL, um 3 zurückzugeben? Da der längste Wert 3 Zeichen ist?
sql
sql-server
string-length
maxlength
Milo LaMar
quelle
quelle
DATALENGTH
(da Sie möglicherweiseNVARCHAR
an einigen Stellen oder eines Tages verwenden).für mysql ist seine länge nicht len
quelle
Achtung!! Wenn Leerzeichen vorhanden sind, werden sie von der LEN-Methode in T-SQL nicht berücksichtigt. Lass dich von diesem Trick nicht täuschen und benutze ihn
quelle
Für Oracle ist es auch LÄNGE anstelle von LEN
DESC ist auch ein reserviertes Wort. Obwohl viele reservierte Wörter unter vielen Umständen immer noch für Spaltennamen funktionieren, ist dies eine schlechte Praxis und kann unter bestimmten Umständen Probleme verursachen. Sie sind aus einem bestimmten Grund reserviert.
Wenn das Wort Desc nur als Beispiel verwendet wurde, sollte beachtet werden, dass nicht jeder dies erkennen wird, aber viele werden erkennen, dass es ein reserviertes Wort für Descending ist. Persönlich begann ich damit und versuchte dann herauszufinden, wohin der Spaltenname ging, weil ich nur reservierte Wörter hatte. Es dauerte nicht lange, um es herauszufinden, aber denken Sie daran, wenn Sie entscheiden, was Ihren tatsächlichen Spaltennamen ersetzen soll.
quelle
Gibt die maximale Anzahl der Datensätze in der Tabelle an
Gibt Rekord mit größerer Anzahl
Hoffnung hilft jemandem.
quelle
quelle
Für SQL Server (SSMS)
Dies gibt die Anzahl der Zeichen zurück.
Dies gibt die Anzahl der verwendeten / erforderlichen Bytes zurück.
WENN jemand varchar benutzt, dann benutze
DATALENGTH
. Mehr Detailsquelle
quelle
Oft möchten Sie die Zeile mit dieser Spalte mit der längsten Länge identifizieren, insbesondere wenn Sie Fehler beheben, um herauszufinden, warum die Länge einer Spalte in einer Zeile in einer Tabelle beispielsweise so viel länger ist als in jeder anderen Zeile. Diese Abfrage gibt Ihnen die Möglichkeit, einen Bezeichner in der Zeile aufzulisten, um festzustellen, um welche Zeile es sich handelt.
quelle
Für IBM Db2 ist es LÄNGE, nicht LEN:
quelle