Introducing the Set-based Loop
Set-based programming doesn’t mean “no loops” or a single statement. Finding out the best ways to traverse a full hierarchy.
2016-10-07 (first published: 2015-07-27)
24,835 reads
Set-based programming doesn’t mean “no loops” or a single statement. Finding out the best ways to traverse a full hierarchy.
2016-10-07 (first published: 2015-07-27)
24,835 reads
SQL Server collation is an important setting when creating database objects. One of the best ways to ensure that collation issues do not happen is to ensure that the collation settings are properly specified in the script that generates the database objects - Siddharth Mehta demonstrates how to do this.
2016-10-07
4,085 reads
Sometimes a request from a user who doesn't appreciate the limitations of the technology can jolt you into discovering that an application feature that was, until recently, difficult to achieve is suddenly relatively easy. Dino was asked to allow the user to take photographs and associate them with an item of work. After he'd recovered from the shock, he decided that it was achievable, and now describes how he went on and did it.
2016-10-06
4,818 reads
Aaron Bertrand runs some tests to challenge an assertion that CHARINDEX is always faster at pattern matching than LEFT and LIKE.
2016-10-05
3,387 reads
When we administer a SQL Database, we always have to work with files. This new article shows how to handle them using PowerShell.
2016-10-04
3,137 reads
Greg Larson explains that SQL Server provides a couple of different ways to delete backup and restore history. If you want to remove backup and restore information for all databases based on a date you can use the sp_delete_backuphistory system stored procedure. Or you can use the system stored procedure named sp_delete_database_backuphistory if you want to remove all backup and restore history for a specific database.
2016-10-04
5,098 reads
Data types are an important part of how tables and variables work. Did you know that constants have databases too?
2016-10-03
1,662 reads
The ALL, SOME and ANY predicates aren't much used in SQL Server, but they are there. You can use the Exists() predicate instead but the logic is more contorted and difficult to read at a glance. Set-oriented predicates can greatly simplify the answering of many real-life business questions, so it is worth getting familiar with them. Joe Celko explains.
2016-10-03
8,250 reads
Although SQL Server for Linux removes the concern that adopting SQL Server forces you to also adopt the Windows platform, it could also provide a useful alternative platform, and a more obvious alternative to Oracle. There are, however, several obvious concerns as to how such a product could ever achieve parity with the existing Windows-based product. Microsoft have made an interesting move with several ramifications, as Robert Sheldon explains.
2016-09-30
6,963 reads
There are times when you want some users to see part of a column value but not the whole thing, but you want other users to see the complete column value without any masking. The new SQL Server 2016 Dynamic Data Masking feature will allow you to define these different kinds of masking rules - Greg Larson explains.
2016-09-29
5,212 reads
By Steve Jones
Redgate is a for-profit company. We look to make money by building and selling...
I’ve uploaded the slides for my Techorama session Microsoft Fabric for Dummies and my...
If you've ever loaded a 2 GB CSV into pandas just to run a...
Comments posted to this topic are about the item Even When You Know What...
Comments posted to this topic are about the item The New Software Team
Comments posted to this topic are about the item Database Mail in SQL Server...
We create the following table and then insert some records in it:
create table t1 ( id int primary key, category char(1) not null, product varchar(50) ); insert into t1 values (1, 'A', 'Product 1'), (2, 'A', 'Product 2'), (3, 'A', 'Product 3'), (4, 'B', 'Product 4'), (5, 'B', 'Product 5');What happens if we execute the following query in both Sql Server and PostgreSQL?
select id,
category,
string_agg(product, ';')
over (partition by category order by id
rows between unbounded preceding and unbounded following) as stragg
from t1; See possible answers