This repository contains a collection of basic and useful SQL Server commands to help you manage databases effectively.
SELECT name
FROM sys.tables;
SELECT *
FROM INFORMATION_SCHEMA.TABLES;
SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME LIKE '%NameTable%';
SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'NameTable';
SELECT name
FROM sys.databases;
SELECT COUNT(*)
FROM [SchemaName].[TableName];
SELECT TOP(N) *
FROM [SchemaName].[TableName];
EXEC sp_helpindex 'SchemaName.TableName';
SELECT *
FROM [SchemaName].[TableName]
WHERE [ColumnName] IS NULL;
UPDATE [SchemaName].[TableName]
SET [ColumnName] = 'NewValue'
WHERE [Condition];
DELETE FROM [SchemaName].[TableName]
WHERE [Condition];
CREATE TABLE [SchemaName].[NewTableName] (
[Column1] DataType CONSTRAINT,
[Column2] DataType CONSTRAINT,
...
);
DROP TABLE [SchemaName].[TableName];
SELECT a.[Column1], b.[Column2]
FROM [SchemaName].[TableA] a
JOIN [SchemaName].[TableB] b ON a.[JoinColumn] = b.[JoinColumn];
This section includes SQL Server commands that are particularly useful for data analysis, allowing you to summarize, aggregate, and manipulate data effectively.
sql SELECT SUM([ColumnName]) AS TotalSum FROM [SchemaName].[TableName];
SELECT AVG([ColumnName]) AS AverageValue
FROM [SchemaName].[TableName];
SELECT MIN([ColumnName]) AS MinValue
FROM [SchemaName].[TableName];
SELECT MAX([ColumnName]) AS MaxValue
FROM [SchemaName].[TableName];
SELECT COUNT(*) AS RowCount
FROM [SchemaName].[TableName];
SELECT [ColumnName], COUNT(*) AS CountPerGroup
FROM [SchemaName].[TableName]
GROUP BY [ColumnName];
SELECT *
FROM [SchemaName].[TableName]
WHERE [ColumnName] = 'Value';
SELECT *
FROM [SchemaName].[TableName]
WHERE [ColumnName1] = 'Value1'
AND [ColumnName2] = 'Value2';
SELECT *
FROM [SchemaName].[TableName]
WHERE [ColumnName] IN ('Value1', 'Value2', 'Value3');
SELECT *
FROM [SchemaName].[TableName]
ORDER BY [ColumnName] ASC;
SELECT *
FROM [SchemaName].[TableName]
ORDER BY [ColumnName] DESC;
SELECT a.[Column1], b.[Column2]
FROM [SchemaName].[TableA] a
INNER JOIN [SchemaName].[TableB] b ON a.[JoinColumn] = b.[JoinColumn];
SELECT [ColumnName],
CASE
WHEN [Condition1] THEN 'Result1'
WHEN [Condition2] THEN 'Result2'
ELSE 'Other'
END AS NewColumnName
FROM [SchemaName].[TableName];
SELECT [PivotColumn], [AggregateFunction]([ValueColumn]) AS [AliasName]
FROM [SchemaName].[TableName]
GROUP BY [PivotColumn]
PIVOT ([AggregateFunction]([ValueColumn]) FOR [PivotColumn] IN ([Value1], [Value2], [Value3]));
SELECT [ColumnName],
AVG([ValueColumn]) OVER (ORDER BY [DateColumn]
ROWS BETWEEN 4 PRECEDING AND CURRENT ROW) AS RollingAvg
FROM [SchemaName].[TableName];
SELECT [ColumnName], COUNT(*) AS DuplicateCount
FROM [SchemaName].[TableName]
GROUP BY [ColumnName]
HAVING COUNT(*) > 1;
SELECT [ColumnName],
(SELECT MAX([OtherColumn])
FROM [SchemaName].[OtherTable]
WHERE [Condition]) AS MaxValue
FROM [SchemaName].[TableName];
WITH CTE AS (
SELECT [Column1], [Column2]
FROM [SchemaName].[TableName]
WHERE [Condition]
)
SELECT *
FROM CTE
WHERE [AnotherCondition];