Using Len() in a Select Statement

By Damian Maclennen on 1 August 2001 | Tags: Queries


Maya writes "My select statement returns a resultset with one field, 'ResultText'. I would like to get a length of that field. Is there a way in SQL to do it like in Visual Basic ?"

Yes Maya, there are two ways of doing this.

The first is the Len() function which works just like Visual Basic's Len() function.

Use Pubs

SELECT Title, Len(Notes) as LengthOfNotes from Titles

Will produce


The Busy Executive's Database Guide			101
Cooking with Computers: Surreptitious Balance Sheets	76
You Can Combat Computer Stress!				119
Straight Talk About Computers				91
Silicon Valley Gastronomic Treats			52
The Gourmet Microwave					72
The Psychology of Computer Cooking			NULL
....

As you can see, the Len of a NULL value is NULL.

Datalength()

If you try to use len() on a Text field, you will get an error Argument data type text is invalid for argument 1 of len function.

The answer to this is the Datalength() function which will return the length of any expression. This can be used on all data types including text, ntext, image and varbinary.

Hope that clears it all up.

Merkin


Related Articles

Using Dynamic SQL in Stored Procedures (7 March 2011)

Joining to the Next Sequential Row (2 April 2008)

Writing Outer Joins in T-SQL (11 February 2008)

Aggregating Correlated Sub-Queries (23 October 2007)

How to Use GROUP BY with Distinct Aggregates and Derived tables (31 July 2007)

How to Use GROUP BY in SQL Server (30 July 2007)

Returning Complex Data from User-Defined Functions with CROSS APPLY (11 June 2007)

Returning a week number for any given date and starting fiscal month (2 May 2007)

Other Recent Forum Posts

Good and bad design (1d)

I have installed 2019 MS SQL via powershell but I am not able to open SSMS (1d)

Home page (Web Portal) just spins (2d)

Get the min start and max end when the datetime overlap is more than 1 day (2d)

Query Inner or Sub including 4 tables (2d)

CASE Statement to Categorize Data Request (2d)

How to remove all text inside brackets in sql server and return only text to the left of this (3d)

Get first datetime and last datetime on a single row (3d)

- Advertisement -