Questions tagged «sql»

结构化查询语言(SQL)是用于查询数据库的语言。问题应包括代码示例,表结构,示例数据以及正在使用的DBMS实现的标签(例如MySQL,PostgreSQL,Oracle,MS SQL Server,IBM DB2等)。如果您的问题仅涉及特定的DBMS(使用特定的扩展名/功能),请改用该DBMS的标签。使用SQL标记的问题的答案应使用ISO / IEC标准SQL。


17
按IN值列表排序
我在PostgreSQL 8.3中有一个简单的SQL查询,可获取大量注释。我在子句中为构造提供了一个排序的值列表:INWHERE SELECT * FROM comments WHERE (comments.id IN (1,3,2,4)); 这会以任意顺序返回评论,在我看来,这些评论恰好是ID 1,2,3,4。 我希望结果行的排序类似于IN构造中的列表:(1,3,2,4)。 如何实现呢?

3
如何更改PostgreSQL表并使列唯一?
我在PostgreSQL中有一张表,其架构如下所示: CREATE TABLE "foo_table" ( "id" serial NOT NULL PRIMARY KEY, "permalink" varchar(200) NOT NULL, "text" varchar(512) NOT NULL, "timestamp" timestamp with time zone NOT NULL ) 现在,我想通过更改表来使永久链接在整个表中唯一。有人可以帮我吗? TIA

7
SSRS Designer中的“数据集”面板(“报告数据”)消失了
在SSRS设计器(例如Visual Studio)的布局屏幕中,我丢失了报告数据面板。 它已经消失了,我不记得要取回它的名字了。 通常列出以下项目: 内置字段 参量 图片 数据源 数据集 以前,它与常规“工具箱”和“服务器资源管理器”面板位于同一区域。 有人知道如何还原吗?

9
相当于COUNTIF聚合函数的SQL Server
我正在建立一个带有GROUP BY子句的查询,该子句需要能够仅基于特定条件对记录进行计数(例如,仅对某个列值等于1的记录进行计数)。 SELECT UID, COUNT(UID) AS TotalRecords, SUM(ContractDollars) AS ContractDollars, (COUNTIF(MyColumn, 1) / COUNT(UID) * 100) -- Get the average of all records that are 1 FROM dbo.AD_CurrentView GROUP BY UID HAVING SUM(ContractDollars) >= 500000 该COUNTIF()行显然由于没有调用本机SQL函数COUNTIF而失败,但是这里的想法是确定MyColumn的所有值为'1'的行的百分比。 关于如何在MS SQL 2005环境中正确实现这一点的任何想法?


15
插入datetime时从字符串转换日期和/或时间时转换失败
我正在尝试如下创建表, create table table1(date1 datetime,date2 datetime); 首先,我尝试如下插入值, insert into table1 values('21-02-2012 6:10:00 PM','01-01-2001 12:00:00 AM'); 它给出了错误的说法, 无法将varchar转换为datetime 然后,我尝试使用以下格式作为我们stackoverflow建议的帖子之一, insert into table1 values(convert(datetime,'21-02-2012 6:10:00 PM',5) ,convert(datetime,'01-01-2001 12:00:00 AM',5)); 但是仍然出现错误, 从字符串转换日期和/或时间时转换失败 有什么建议?
164 sql  sql-server 


11
LEFT OUTER JOIN如何返回比左表中更多的记录?
我有一个非常基本的LEFT OUTER JOIN,可以从左表中返回所有结果,并从更大的表中返回一些其他信息。左表包含4935条记录,但是当我将其左移到另一个表中时,记录数会大大增加。 据我所知,绝对的福音是,LEFT OUTER JOIN将返回左表中的所有记录,并返回右表中的匹配记录,并为所有无法匹配的行返回空值,因此,我的理解是返回的行数不可能超过左表中存在的行数,但是这都是一样的! SQL查询如下: SELECT SUSP.Susp_Visits.SuspReason, SUSP.Susp_Visits.SiteID FROM SUSP.Susp_Visits LEFT OUTER JOIN DATA.Dim_Member ON SUSP.Susp_Visits.MemID = DATA.Dim_Member.MembershipNum 也许我在语法上犯了一个错误,或者我对LEFT OUTER JOIN的理解不完整,希望有人能解释这是怎么发生的? 后记 感谢您提供的出色答案,现在我对LEFT OUTER JOINS的了解要好得多,但是有人可以建议修改此查询的方式,以便使我只获得与左表中一样多的返回记录吗? 此查询纯粹是为了生成报告,重复的匹配项只会使事情变得混乱。 /后记

7
SQL JOIN vs IN性能?
在某些情况下,使用JOIN或IN将为我提供正确的结果...哪一种通常具有更好的性能,为什么?它在多大程度上取决于您正在运行的数据库服务器?(仅供参考,我正在使用MSSQL)


5
如果存在,则丢弃VS丢弃?
有人可以告诉我两者之间是否有区别 DROP IF EXISTS [TABLE_NAME] DROP [TABLE_NAME] 我问这是因为我在MVC Web应用程序中使用JDBC模板。如果使用DROP [TABLE_NAME]错误,则表示该表存在。如果我使用DROP IF EXISTS [TABLE_NAME]它,则表示SQL语法错误。可以帮忙吗?
163 sql  drop-table 



6
如何使用SELECT * INTO tempTable from CTE Query创建临时表
我有一个要从中创建临时表的MS SQL CTE查询。我不确定该怎么办,因为它会导致Invalid Object name错误。 下面是整个查询供参考 SELECT * INTO TEMPBLOCKEDDATES FROM ;with Calendar as ( select EventID, EventTitle, EventStartDate, EventEndDate, EventEnumDays,EventStartTime,EventEndTime, EventRecurring, EventStartDate as PlannedDate ,EventType from EventCalender where EventActive = 1 AND LanguageID =1 AND EventBlockDate = 1 union all select EventID, EventTitle, EventStartDate, EventEndDate, EventEnumDays,EventStartTime,EventEndTime, EventRecurring, dateadd(dd, 1, …

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.