Questions tagged «sql-server»

Microsoft SQL Server是一个关系数据库管理系统(RDBMS)。将此标签用于所有SQL Server版本,包括Compact,Express,Azure,Fast-track,APS(以前称为PDW)和Azure SQL DW。请勿将此标签用于其他类型的DBMS(MySQL,PostgreSQL,Oracle等)。除非该标签与数据库直接相关,否则请勿将其用于软件和移动开发问题。



9
选择SQL Server数据库大小
我如何查询我的sql服务器以仅获取数据库的大小? 我用这个 use "MY_DB" exec sp_spaceused 我懂了 : database_name database_size unallocated space My_DB 17899.13 MB 5309.39 MB 它返回了我不需要的几列,也许有一个技巧可以从此存储过程中选择database_size列? 我也尝试了这段代码: SELECT DB_NAME(database_id) AS DatabaseName, Name AS Logical_Name, Physical_Name, (size * 8) / 1024 SizeMB FROM sys.master_files WHERE DB_NAME(database_id) = 'MY_DB' 它给了我这个结果: DatabaseName Logical_Name Physical_Name SizeMB MY_DB MY_DB D:\MSSQL\Data\MY_DB.mdf 10613 MY_DB MY_DB_log …

2
为什么我不能在DELETE语句中使用别名?
在Visual Studio 2010的SQL Server Compact Edition中(也许我不知道SQL Server和SQL),此命令有效: DELETE FROM foods WHERE (name IN ('chickens', 'rabbits')) 但是此命令产生以下错误: Error near identifier f. Expecting OUTPUT. DELETE FROM foods f WHERE (f.name IN ('chickens', 'rabbits'))


2
保持简单以及如何在查询中进行多个CTE
我有这个简单的T-SQL查询,它从一个表中发出一堆列,并且还连接其他相关表中的信息。 我的数据模型很简单。我有一个预定的活动,有参与者。我需要知道每个活动有多少参与者。 我对此的解决方案是添加一个CTE,该CTE对计划的事件进行分组并计算参与者的数量。 这将使我能够在每个计划的活动中加入该信息。使查询保持简单。 我希望使查询保持简单,但是,如果将来在简单查询期间需要访问附加的临时结果,该怎么办? 如果可以有多个CTE,但我不能,我真的很喜欢,对吗?我在这里有什么选择? 我已经排除了在应用程序数据层的视图和操作。我更喜欢隔离我的SQL查询。


8
DISTINCT仅一栏
假设我有以下查询。 SELECT ID, Email, ProductName, ProductModel FROM Products 如何修改它,使其不返回重复的电子邮件? 换句话说,当几行包含同一封电子邮件时,我希望结果仅包含这些行之一(最好是最后一行)。在其他列中应允许重复。 子句喜欢DISTINCT并且GROUP BY似乎在整个行上都起作用。所以我不确定该如何处理。
155 sql  sql-server 



8
可以将SELECT INTO子句与UNION [ALL]一起使用吗?
在SQL Server中,这会将来自Customers表的100条记录插入到tmpFerdeen中: SELECT top(100)* INTO tmpFerdeen FROM Customers 是否可以跨UNION ALL SELECT进行SELECT INTO:- SELECT top(100)* FROM Customers UNION All SELECT top(100)* FROM CustomerEurope UNION All SELECT top(100)* FROM CustomerAsia UNION All SELECT top(100)* FROM CustomerAmericas 不太确定在哪里添加INTO子句。
154 sql  sql-server 

8
在SQL Server中隐含常数1或0的位
在select语句中用作字段值时,可以将1或0表示为一位吗? 例如 在这种情况下,语句(属于select语句)ICourseBased的类型为int。 case when FC.CourseId is not null then 1 else 0 end as IsCoursedBased 为了使它成为位类型,我必须转换两个值。 case when FC.CourseId is not null then cast(1 as bit) else cast(0 as bit) end as IsCoursedBased 是否有一种简便的方法可以将值表示为位类型而不必每次都强制转换? (我正在使用MS SQL Server 2005)
154 sql  sql-server  tsql  bit 

9
将数据复制到另一个表
如何在SQL Server中使用相同的架构将数据从一个表复制/追加到另一个表中? 编辑: 假设有一个查询 select * into table1 from table2 where 1=1 所创建table1的架构和数据与中相同table2。 是否有类似这样的简短查询,仅将整个数据仅复制到一个已经存在的表中?

7
如何选择不区分列值的每一行
我需要运行一条select语句,以返回列值不唯一的所有行(例如EmailAddress)。 例如,如果表如下所示: CustomerName EmailAddress Aaron aaron@gmail.com Christy aaron@gmail.com Jason jason@gmail.com Eric eric@gmail.com John aaron@gmail.com 我需要查询返回: Aaron aaron@gmail.com Christy aaron@gmail.com John aaron@gmail.com 我已经阅读了许多帖子,并尝试了不同的查询,但均无济于事。我认为应该工作的查询如下。有人可以提出替代方案或告诉我查询的问题是什么吗? select EmailAddress, CustomerName from Customers group by EmailAddress, CustomerName having COUNT(distinct(EmailAddress)) > 1

17
SQL Server操作系统错误5:“ 5(访问被拒绝。)”
我开始学习SQL,并且有一本书提供了要处理的数据库。以下这些文件位于目录中,但问题是,当我运行查询时,它给了我这个错误: 消息5120,级别16,状态101,第1行无法打开物理文件“ C:\ Murach \ SQL Server 2008 \ Databases \ AP.mdf”。操作系统错误5:“ 5(访问被拒绝。)”。 CREATE DATABASE AP ON PRIMARY (FILENAME = 'C:\Murach\SQL Server 2008\Databases\AP.mdf') LOG ON (FILENAME = 'C:\Murach\SQL Server 2008\Databases\AP_log.ldf') FOR ATTACH GO 在书中,作者说它应该起作用,但就我而言,它不起作用。我进行了搜索,但不确切知道问题出在哪里,因此我发布了此问题。
153 sql  sql-server 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.