Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
 Sql_IT技术博客_编程技术问答 - 「Fatal编程技术网」

Sql Oracle时间戳:提取整小时

我需要提取时间戳的“完整”小时。比如2010.03.04 13:13,我想要2010.03.04 13:00(再次作为时间戳) 我目前的做法是: TO_TIMESTAMP(TO_CHAR(m.begin, 'yyyy.mm.dd hh24'), 'yyyy.mm.dd hh24') 真的是这样吗?它表现的好/坏是谁(我计划做一个小组讨论) 谢谢你的意见 干杯, Reto您可以使用TRUNC()函数: 以下是官方文件: SELECT TRUNC(m.begin, 'HH24') FROM

删除并替换sql中字符串中的多个字符(空格、连字符、方括号、句点)

请查看以上给定的电话号码。我需要替换这些数字中的所有空格、连字符、句号、括号和前导0等。我需要这个格式+447469186974 若这个数字有前导的加号,那个么不要替换它,否则我必须用它连接加号 例如 +39235 6595750在这个数字中,我只需要删除空格 +44(0)181 446 5697在这里,我需要删除空格和括号以及括号之间的0,即(0) 07825 893217在本例中,我需要将前导0替换为+号并删除空格 (415)706 2001在此替换“(“with+sign and remo

Pl/SQL上的仅更新日期时间字段上的日期

所以我需要更新Oracle数据库中的一些日期,字段是datetime,但我只希望更新日期并保持时间不变。。。这里的查询是这样的: update table SET field = to_date('07312010','MMDDYY'); 但它覆盖了字段中的小时、分钟和秒,我想更新日期,但我想保持时间不变,有什么想法吗?您可以使用: UPDATE TABLE SET field = TO_DATE('07312010' || ' ' || TO_CHAR(field, 'HH24

Sql 我怎样才能做一张桌子;否决;另一个

假设我有两张桌子: CREATE TABLE A( id INT PRIMARY KEY, x INT, y INT ) CREATE TABLE B( id INT PRIMARY KEY, x INT, y INT, ) 表A包含从其他供应商处引入的数据,而表B是我们的数据。为简单起见,我已经使这些表在模式方面完全相同,但表B可能是表a的超集(它将包含表a在其他方面不包含的一些列) 我想做的是创建一个具有id、x和y列的视图C,这样值来自表

Sql 如果表中存在该值,如何查找该值?

我创建了一个名为stock的SQL表。该表中的字段为itemcode和netweight。如果某个特定项目代码的netweight字段为零,如何获得类似“库存不可用”这样的消息 select 'The Stock is Not Available' from stock where netweight = 0 and 'YOUR CONDITION' 这就是您可以在存储过程中使用的内容 请提供更多关于表的信息,以及如果您想详细了解,您需要做什么。这本来不应该是数据库的问题;数据库的任务是存

Sql 有没有办法在Oracle 10g中的数据库之间复制BLOB记录?

我们有一个生产表,其中有数百万行,并且包含一个BLOB字段,如果可能的话,我想将这些记录的较小选择复制到我们的开发数据库中,而不需要DBA参与。我尝试了以下复制命令,但收到了CPY-0012:无法复制数据类型 COPY FROM user/password@prod_db TO user/password@dev_db - INSERT TABLE_A (COL1, COL2, COL3, BLOB_COL) USING - SELECT COL1, COL2, COL3, BLOB_COL -

在sql查询中使用DECODE with FIRST ORDER_BY

我已经开始学习SQL,在浏览一些阅读材料时,我偶然发现了以下问题: SELECT MAX(SALARY) KEEP (DENSE_RANK FIRST ORDER BY DECODE (SALARY, NULL, NULL, MONTHLY_SAL) NULLS LAST) 我已经试着阅读了这意味着什么,并得出了以下结论(请原谅我长篇大论的解释): DECODE(SALARY,NULL,NULL,MONTHLY_-SAL)上次为NULL-将返回MONTHLY_-SAL,除非SALAR

Sql 是否可以使用一个case语句返回多个列?

我有4个case语句,它们与case标准完全相同,但它们都有不同的THEN/ELSE语句 是否可以一次完成这些任务,或者我需要将这些任务分离出来并多次复制和粘贴代码 ,CASE WHEN lm.Id IN ('1','2','3') THEN lm.name ELSE lm.Desc END AS [Column1] ,CASE WHEN lm.Id IN ('1','2','3') THEN '3' ELSE '1' END AS [Column2] ,CASE WHEN lm.Id IN (

Sql 可能的黑客企图。如何判断我的数据库是否已被破坏

我的日志文件中有以下内容,间隔几秒钟。我假设有什么东西试图找到我的数据库或管理页面或其他东西,但我不确定 我应该担心这一点吗?我如何判断我的数据库是否已受损 ERROR - 2011-09-23 20:51:42 --> 404 Page Not Found --> muieblackcat ERROR - 2011-09-23 20:51:46 --> 404 Page Not Found --> PMA ERROR - 2011-09-23 20:51:46 --&g

Sql 正确使用Count函数

在“注册更改”表中,列出的电话型号是订户在该日期更改的电话 如果随后没有更改注册信息,则用户更改的电话将列在p\U注册表中 例如,用户12345678于2011年1月5日使用RAZR注册。2011年11月1日,他更换了RAZR。您可以看到他在2012年5月19日的下一次注册交易中更改了什么 您如何计算首次注册iPhone3的SUB数量 下面是我创建表的代码 创建表:TBL 1 USE [Test2] GO /****** Object: Table [dbo].[P_ENROLLMENT]

Sql Oracle-文字与格式字符串不匹配错误

可能重复: 我得到以下错误: INSERT INTO CatalogueEntry VALUES('2001-12-10', 2, 14.99, 1, 0) ERROR at line 1: ORA-01861: literal does not match format string ` 第一个字段是日期格式 有什么想法吗 谢谢。试试这个SQL: INSERT INTO CatalogueEntry VALUES(to_date('2001-12-10','

Sql 如何使用CTE和内部联接删除行?

如何使用CTE和内部联接从表中删除数据?这是有效的语法,因此应该这样做: with my_cte as ( select distinct var1, var2 from table_a ) delete from table_b b inner join my_cte on var1 = b.datecol and var2 = b.mycol; 在Oracle中,CTE和内部联接对DELETE命令都无效。这同样适用于INSERT和UPDATE命令 一般来说,最好的选择是使用DEL

Sql 稠密_rank()按和空排序-如何使它将它们视为排名的底部?

我使用的是Postgresql 9.1.9版: select version(); "PostgreSQL 9.1.9 on armv7l-unknown-linux-gnueabihf, compiled by gcc (Debian 4.6.3-14+rpi1) 4.6.3, 32-bit" 我有一个简单的表(称为Test),它有一个可为null的bigint列(称为a)。该表包含以下数据: NULL 1 2 现在我想创建一个密集的排名(因此使用函数),因此我执行以下查询: selec

Microsoft SQL Server Management Studio权限出现问题

请在此链接中查找我引用的所有文件: 我已在两台Windows 7计算机上安装了“SQL Server 2008 R2 Management Studio Express(x86)”的新副本。两台计算机的安装文件相同。以同样的方式安装。(据我所知,我选择了相同的选项) 一个在家,一个在工作 我“执行”了这个文件(ITD132 Inventory Initial with data.sql),家里的那个似乎工作得很好,它工作得很好。当我在工作中“执行”它时,我得到: 味精262,第14级,状态1,

针对多个日期范围使用group by的SQL查询

我需要制定一个t-sql查询,但到目前为止我还无法做到这一点。我需要查询的表称为Operations,它有两列,一列是FK OperationTypeID,一列是OperationDate。查询需要返回一个结果,该结果包含指定范围内操作类型id的计数 通过应用程序界面,用户可以指定多个operationtypeid以及它们各自的日期范围,例如,可以在范围内查找operationtype id'A' 2010年4月22日至2012年4月22日和操作类型Id“B”可在2012年10月15日至2013

Sql 如何检查时间差

下面的代码返回 CREATE TABLE #emp1 ( empid VARCHAR(50), empname VARCHAR(50), intime SMALLDATETIME, outtime SMALLDATETIME ) INSERT INTO #emp1 VALUES (2500, 'Arun', '2014-01-01 09:00:00',

Sql 如何生成可执行的TPC-DS查询?

我已经从TPC-DS网站下载了DSGEN工具,并且已经生成了表并将数据加载到Oracle XE中 我正在使用以下命令生成SQL语句: dsqgen-input..\query\u templates\templates.lst-目录..\query\u templates-方言oracle-比例1 但是,无论我如何调整命令,我始终会收到以下错误消息: 错误:必须使用输入选项提供查询模板列表 有人能帮忙吗?显然,对于Windows可执行文件的标志,您需要使用/而不是-: dsqgen /input

Sql 日期时间比较操作

我的数据库中有以下记录: datetime 我还有一个查询,用于从表中获取一些记录: SELECT count(*) FROM Availibility WHERE [date]>= @StartDate AND [date]<=@EndDate 但是结果是一样的,我有4条记录持续了几秒钟。测试代码: create table Availability ( [date] datetime not null ) insert Availability ([date]) s

Oracle SQL-不存在的更新查询不起作用

我认为我在使用Oracle SQL语法时出错了。这是我在Transact-SQL中使用的语法 UPDATE "DE_OPS" SET IMPORT_DATE = GETDATE() WHERE PROCEDURE_CODE NOT IN ( SELECT DISTINCT PROCEDURE_CODE FROM DE_OPS_20140730 ); 我将Oracle SQL的这一点重新定义为 UPDATE "DE_OPS" SET IMPORT_DATE = SYSDATE() WHERE

Sql Oracle需要在单个列中包含多行数据

我有这样的桌子 COLA COLB A 1 A 2 A 3 B 12 B 6 C 8 我想输出如下 COLA COLB A 1|2|3 B 12|6 C 8 请帮帮我 您可以使用listag(): orderbynull没有指定特定的顺序,但它不能保证顺序。如果顺序不同,那么应该有一个明确的列 编辑: 在Oracle的

Sql 在非基于字符的语言上使用LEN()函数

我试图使用LEN()来度量可以使用各种语言的文本字符串。我们的想法是将其用作限制长度低于一定长度的评论 我遇到了一个问题,如果语言不是英语,len()就不会计算长度 这有什么关系吗?是否有其他函数可用于计算字符串的长度?为我返回正确答案 select 'len gt 60' where len('นี่คือการทดสอบ ฟังก์ชั่น ความยาว เมื่อ มีมากกว่า หกสิบ ตัวอักษร ในสายที่ไม่ได้รับ การบันทึกโดย ฟังก์

使用sql中的行值定义新列

下面的代码有效 SET @SQL = ' SELECT SC.Name AS BUYER, CASE WHEN PPC.FactoryName = ''ANANTA'' THEN OM.OrderQty END AS Unit1_Qty FROM LineAllocation LA INNER JOIN OrderMaster OM ON LA.OrderRef= OM.OrderRefID INNER JOIN AmanOTS..FileRef FR ON FR.FileRefID =

Sql 如何查询一个数据库,如果没有返回结果,则查询另一个数据库?

我有4个数据库具有相同的表(即相同的结构)。 目的是检查数据库1中的ID号,如果它存在,请停止处理并返回名称。如果数据库1中不存在该ID,则检查数据库2,依此类推 我可以使用UNION组合结果,但我的目标是在第一次查询中找到结果时,通过最小化对后续数据库的调用来优化此过程 SELECT DOCNAME FROM DATABASE1.DOCTABLE WHERE DOCID=1 UNION SELECT DOCNAME FROM DATABASE2.DOCTABLE WHERE DOCID=1 U

Sql DB2:一般地复制行

你能帮我在DB2中一般地复制行吗!?任务是复制符合特定条件的行(如:其中version=abc),并将它们重新插入到同一个表中,并在某些列上更新值(如:version=abc+1) 一般来说,我的意思是,我不能显式列出行的属性,它必须适用于任意表 //编辑以澄清: 假设有一个属性为ID、NAME、VERSION的表。现在我想将这个表的一些行(其中version=4)复制到同一个表中,但版本增加了1。为此,我需要一个SQL语句 相同的SQL语句应适用于具有属性ID、国家/地区、版本的表 所以,总是

是否有一种Groovy方法来更新SQL行?

我正在转换一个Groovy脚本,该脚本更新了MongoDB中的文档,并使用save方法doc.save()将其保存到MongoDB中 现在,我想在Crate数据库上使用groovy.SQL的SQL数据库,但不能使用2013年开始讨论的ResultSet.CONCUR\u Updateable技巧(Crate不支持它) 是否有另一种“Groovy”方式将更新的行(来自单个表)存储到SQL数据库中?我要寻找的是类似于row.update()的东西,或者是从GroovyRowResult或Map构造u

Sql 删除所有约束

我有一个简单的脚本,它显示某个表的所有约束: SELECT * FROM DB_NAME.INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = 'TestTable' 如何删除TestTable中的所有约束并使用之前查询的选择(MS SQL Server 2012)?或者,这将是一个不好的方式来删除约束 我找到了一些解决方案,但我不明白它们从哪里获得有关约束的信息。尝试使用以下

SQL Server使用交叉应用避免SELECT语句中的重复记录

我有一个表,其中没有主键或任何唯一列(没有任何自动增量列) 我必须从表中选择记录,避免重复记录。我使用了ROW\u NUMBER()函数来实现这一点,它对我很有用 这是工作代码 WITH Result AS ( SELECT ISNULL(ROW_NUMBER() OVER (ORDER BY CategoryName

自定义错误显示与SQL server冲突的约束

我是SQL Server 2014的新手。我创建了表student,我创建了三列,如下所示。melicode具有CHECK约束,当您希望使用编辑前200行时,它可以正常工作。当您试图给melicode一个小于2的数字时,您会遇到一个Errorbox;但是这里的问题是:如果违反了约束,我是否可以打印一个自定义错误框来说明问题,例如“melicode范围从2开始” 我尝试了以下代码来实现它,但遇到了错误: IF melicode < 2 RAISERROR ('melicode c

Sql 由于“插入”而导致插入失败;“此处不允许使用列”;错误

我是SQL的初学者。我已经创建了4个表,并将数据添加到我的SHIP表中。我在将数据插入巡航表时遇到一些问题。我在底部得到了错误信息 我已经研究过了,不知道我做错了什么。我的序列和/或触发器是否存在不允许我执行此操作的问题,或者CREATE TABLE CRUISE中的语法是否导致了错误?我所做的一切都是成功的,直到尝试将第一列插入CRUISE表 各表: CREATE TABLE SHIP ( Ship_Name VARCHAR2(100) PRIMARY KEY, Ship_Size INTE

Oracle SQL开发人员-重命名属性会导致错误

我在Oracle SQL Developer中遇到了一个奇怪的情况。我不得不重命名一些属性以符合学校的变量名标准,当我执行程序时,新的属性名似乎没有被考虑在内 例如,我正在创建一个名为VARIANT的表,如下所示: create table VARIANT( ID_VAR varchar(9) not null, NUCL_VAR char(1) not null, NUCL_REF_VAR char(1) not null, CHROMOSOME_VAR number(2) n

Sql Postgres函数返回带有时区偏移的datetime

不要总是写: select my_column at time zone 'UTC' at time zone 'Europe/Paris' from my_table; 我更喜欢做: select dtz(my_column, 'Europe/Paris') from my_table; UTC是全系统的(服务器时区),甚至可以在dtz()中硬编码 有人能分享这样一个功能的有效实现吗 编辑 select my_column at time zone 'UTC' at time zone '

使用SparkSQL从IP地址检索地理位置(区域或大陆)

我有一个带有一组IP地址的表列,我需要找出它的地区/大陆,如下所述 ------------------------------------------------------ ip_address | region ------------------------------------------------------ 217.100.34.222 | North Holland 为此,我从下载了IP国家/地区/城市数据库,但其表和值如下所示 -----------

如何拍摄快照,然后将结果追加到另一个SQL表

在月底,我需要拍摄一个快照,然后将结果附加到一个表中,该表将累积每个快照数据。请问我怎样才能做到这一点 例如,我是否计划每月运行一个存储过程来更新临时表,然后另一个过程更新该表?还是有更好的办法 问候,, 劳拉你所说的“快照”是什么意思?你是指表格内容的转储吗?如果你不断地将表格的全部内容与其以前副本的内容附加在一起,那么你会遇到指数级的增长,这将是一件坏事。请更具体地说明您想要实现的目标……为什么不使用DBMS的内置备份功能进行备份呢?Hi-Dai,我所说的快照是指运行一个查询,该查询的结果将

Sql 消除shell脚本中的某些输出行

上面是我的查询输出,我需要在我的输出屏幕中显示计数值 SQL>COUNT(*) 34369 SQL> Disconnected from Oracle Database 10g Release 10.2.0.5.0 - 64bit Production 或者通过grep+tail组合: sed -n '/COUNT(\*)/{n;n;p}' inputfile 34369 感谢您的帮助,sed实际工作并获得了预期的输出 grep -A2 'COUNT' inputf

Oracle SQL SELECT等效于多个和

也许你能帮我。我实际上是在ORACLE平台上学习SQL的,我有几个练习 其中一个对我来说很难,我没有把它做好 这是练习: 哪些国家是所有组织的成员,哪些国家也是XY的成员 我有多个表,但我认为这项任务只需要一个表 表名:isMember(缩写(fk),国家(fk)) 所以这些表看起来像: Country / Abbreviation USA / G-5 USA / G-7 USA / G-9 Canada /

如何从sql中删除10到15个记录

我怎样才能得到10-15之间的记录?我在网上找到了一些类似的代码 Select * from Employee LIMIT 10 to 15 但是我在限制处得到一个错误您可以使用偏移量和获取下一个: select e.* from Employee e order by ?? offset 9 fetch next 6 rows only; 请注意,fetch可从SQL Server 2012起使用 通常情况下,您可以通过订单执行此操作。??是用于排序的列/表达式。如果没有的顺序,使用

Sql Paypal按小时报告付款情况

有没有办法将Paypal交易下载到csv中,并使用某种报告工具(Excel或在线)对其进行开箱即用的报告? 我目前正在寻找的是收到的付款报告,按数据每天的小时计算。我想知道我大部分的订单是在什么时候发出的 2017年7月9日更新: 下面是标准Paypal活动下载中数据的图像。如果我把它上传到Access/MySQL或者仅仅使用Excel,我应该使用wat SQL按小时获取订单报告吗?例如,我想知道我在早上7:00到8:00之间收到的订单是否最多,等等。 我们在这里做更多的编程。谢谢-我上传了数据

在sql中的*后面设置别名

有没有办法为ORACLE SQL中星号(*)后面的不同列创建别名 是否有办法在*之后设置别名 SELECT * INDEX_1 AS INDECIES FROM TABLE WHERE INDEX_1 = 5 AND INDEX_2 = 6 ; 没有 中SELECT语句的SELECT\u列表的语法如下: 这意味着,要么是星号,要么是行源限定的星号和离散列。*之后不可能有c_别名令牌 您可以做的是将星号和字段列表组合在一起,即使两个部分引用同一个表,如下所示: SELECT TA1.*,

Sql 使用不同的用户配置文件登录后无法保存SSIS包

我有一个SSIS包,它是我在自己的用户配置文件下开发的。 我现在有了一个新的数据源,它只允许Windows对其SQL数据库进行身份验证,因此我现在必须使用此服务帐户登录到我的环境,因为我无法提供SQL登录凭证 现在使用Windows服务帐户登录后,我已打开SSIS解决方案并进行更改以添加新的数据源,但是,当我尝试保存包时,出现错误“访问路径……被拒绝” 我也尝试过只执行包(测试这么长时间),但再次提示先保存包,然后得到相同的错误 我已检查Windows文件夹和文件权限以报告此用户名的有效权限,这

在PostgreSQL中计算速率

尝试做一些非常简单的事情,通过邮寄计算注册流量 我有一个名为signup\u flow的列-每行的整数值为1或0。正在尝试计算每个邮件的注册流量 我正在使用以下查询SUM(注册流量)和COUNT(注册流量)返回每个邮件的正确值。当我尝试执行一个简单的计算字段(sum/count*100)时,它返回0。这是我第一次使用Postgres,它不支持计算吗 SELECT mailing, SUM(signup_flow), COUNT(signup_flow), ((SUM(

DB2—如何逐个运行多个匿名SQL块? 我可以在结束后使用分号(;)运行多个块(开始…结束)吗 如果我在所有块中使用相同的变量,那么我必须在每个块中声明变量还是仅在第一个块中声明变量

这取决于运行块的程序和工具集 这个答案与Db2命令行处理器(DB2CLP)相关。它还可能与GUI工具相关,GUI工具允许您执行多个块并允许使用替代语句分隔符 对于DB2CLP,您可以在一个脚本中串联运行多个匿名块(一个接一个),前提是使用替代语句分隔符。这使Db2命令处理器(如果运行脚本的是命令处理器)能够区分块内的语句,区别于块的末尾和下一个块的开头。(仅仅开始和结束是不够的) 示例脚本: --#SET TERMINATOR @ begin statement1; statement2

Sql 我无法创建逻辑

显示通过其所有包裹交付订单向其支付最大费用的客户的详细信息 我有一张客户表: 顾客 CustomerId CustomerName CustomerAddress 另一项业务 BusinessId Name向CustomerId收费 一个客户可能有很多费用,我们需要对每个客户的费用进行合计,找出这些合计费用的最大值,并显示支付了最高费用的客户 SELECT customerid, MAX(scharge) FROM ( SELECT customerid