我需要提取时间戳的“完整”小时。比如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
请查看以上给定的电话号码。我需要替换这些数字中的所有空格、连字符、句号、括号和前导0等。我需要这个格式+447469186974
若这个数字有前导的加号,那个么不要替换它,否则我必须用它连接加号
例如
+39235 6595750在这个数字中,我只需要删除空格
+44(0)181 446 5697在这里,我需要删除空格和括号以及括号之间的0,即(0)
07825 893217在本例中,我需要将前导0替换为+号并删除空格
(415)706 2001在此替换“(“with+sign and remo
所以我需要更新Oracle数据库中的一些日期,字段是datetime,但我只希望更新日期并保持时间不变。。。这里的查询是这样的:
update table
SET field = to_date('07312010','MMDDYY');
但它覆盖了字段中的小时、分钟和秒,我想更新日期,但我想保持时间不变,有什么想法吗?您可以使用:
UPDATE TABLE
SET field = TO_DATE('07312010' || ' ' || TO_CHAR(field, 'HH24
假设我有两张桌子:
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,这样值来自表
我创建了一个名为stock的SQL表。该表中的字段为itemcode和netweight。如果某个特定项目代码的netweight字段为零,如何获得类似“库存不可用”这样的消息
select 'The Stock is Not Available'
from stock
where netweight = 0 and 'YOUR CONDITION'
这就是您可以在存储过程中使用的内容
请提供更多关于表的信息,以及如果您想详细了解,您需要做什么。这本来不应该是数据库的问题;数据库的任务是存
我们有一个生产表,其中有数百万行,并且包含一个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,在浏览一些阅读材料时,我偶然发现了以下问题:
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
我有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 (
我的日志文件中有以下内容,间隔几秒钟。我假设有什么东西试图找到我的数据库或管理页面或其他东西,但我不确定
我应该担心这一点吗?我如何判断我的数据库是否已受损
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
在“注册更改”表中,列出的电话型号是订户在该日期更改的电话
如果随后没有更改注册信息,则用户更改的电话将列在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]
可能重复:
我得到以下错误:
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
Oracle
common-table-expressiondelete-rowsql-delete
如何使用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
我使用的是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
请在此链接中查找我引用的所有文件:
我已在两台Windows 7计算机上安装了“SQL Server 2008 R2 Management Studio Express(x86)”的新副本。两台计算机的安装文件相同。以同样的方式安装。(据我所知,我选择了相同的选项)
一个在家,一个在工作
我“执行”了这个文件(ITD132 Inventory Initial with data.sql),家里的那个似乎工作得很好,它工作得很好。当我在工作中“执行”它时,我得到:
味精262,第14级,状态1,
我需要制定一个t-sql查询,但到目前为止我还无法做到这一点。我需要查询的表称为Operations,它有两列,一列是FK OperationTypeID,一列是OperationDate。查询需要返回一个结果,该结果包含指定范围内操作类型id的计数
通过应用程序界面,用户可以指定多个operationtypeid以及它们各自的日期范围,例如,可以在范围内查找operationtype id'A'
2010年4月22日至2012年4月22日和操作类型Id“B”可在2012年10月15日至2013
下面的代码返回
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',
我已经从TPC-DS网站下载了DSGEN工具,并且已经生成了表并将数据加载到Oracle XE中
我正在使用以下命令生成SQL语句:
dsqgen-input..\query\u templates\templates.lst-目录..\query\u templates-方言oracle-比例1
但是,无论我如何调整命令,我始终会收到以下错误消息:
错误:必须使用输入选项提供查询模板列表
有人能帮忙吗?显然,对于Windows可执行文件的标志,您需要使用/而不是-:
dsqgen /input
我的数据库中有以下记录:
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语法时出错了。这是我在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
我有这样的桌子
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的
我试图使用LEN()来度量可以使用各种语言的文本字符串。我们的想法是将其用作限制长度低于一定长度的评论
我遇到了一个问题,如果语言不是英语,len()就不会计算长度
这有什么关系吗?是否有其他函数可用于计算字符串的长度?为我返回正确答案
select 'len gt 60'
where len('นี่คือการทดสอบ ฟังก์ชั่น ความยาว เมื่อ มีมากกว่า หกสิบ ตัวอักษร ในสายที่ไม่ได้รับ การบันทึกโดย ฟังก์
下面的代码有效
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 =
我有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
你能帮我在DB2中一般地复制行吗!?任务是复制符合特定条件的行(如:其中version=abc),并将它们重新插入到同一个表中,并在某些列上更新值(如:version=abc+1)
一般来说,我的意思是,我不能显式列出行的属性,它必须适用于任意表
//编辑以澄清:
假设有一个属性为ID、NAME、VERSION的表。现在我想将这个表的一些行(其中version=4)复制到同一个表中,但版本增加了1。为此,我需要一个SQL语句
相同的SQL语句应适用于具有属性ID、国家/地区、版本的表
所以,总是
我正在转换一个Groovy脚本,该脚本更新了MongoDB中的文档,并使用save方法doc.save()将其保存到MongoDB中
现在,我想在Crate数据库上使用groovy.SQL的SQL数据库,但不能使用2013年开始讨论的ResultSet.CONCUR\u Updateable技巧(Crate不支持它)
是否有另一种“Groovy”方式将更新的行(来自单个表)存储到SQL数据库中?我要寻找的是类似于row.update()的东西,或者是从GroovyRowResult或Map构造u
我有一个简单的脚本,它显示某个表的所有约束:
SELECT *
FROM DB_NAME.INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE
WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = 'TestTable'
如何删除TestTable中的所有约束并使用之前查询的选择(MS SQL Server 2012)?或者,这将是一个不好的方式来删除约束
我找到了一些解决方案,但我不明白它们从哪里获得有关约束的信息。尝试使用以下
我有一个表,其中没有主键或任何唯一列(没有任何自动增量列)
我必须从表中选择记录,避免重复记录。我使用了ROW\u NUMBER()函数来实现这一点,它对我很有用
这是工作代码
WITH Result AS
(
SELECT ISNULL(ROW_NUMBER() OVER (ORDER BY
CategoryName
在进行测试:
WITH
ct AS
( SELECT
ccp, years, quart,
q2 = round(exp(coalesce(sum(log(sum(gts)))
OVER (PARTITION BY ccp
ORDER BY years, quart
我是SQL Server 2014的新手。我创建了表student,我创建了三列,如下所示。melicode具有CHECK约束,当您希望使用编辑前200行时,它可以正常工作。当您试图给melicode一个小于2的数字时,您会遇到一个Errorbox;但是这里的问题是:如果违反了约束,我是否可以打印一个自定义错误框来说明问题,例如“melicode范围从2开始”
我尝试了以下代码来实现它,但遇到了错误:
IF melicode < 2
RAISERROR ('melicode c
我是SQL的初学者。我已经创建了4个表,并将数据添加到我的SHIP表中。我在将数据插入巡航表时遇到一些问题。我在底部得到了错误信息
我已经研究过了,不知道我做错了什么。我的序列和/或触发器是否存在不允许我执行此操作的问题,或者CREATE TABLE CRUISE中的语法是否导致了错误?我所做的一切都是成功的,直到尝试将第一列插入CRUISE表
各表:
CREATE TABLE SHIP
( Ship_Name VARCHAR2(100) PRIMARY KEY,
Ship_Size INTE
在一个型号上只使用属于与在一个型号上使用拥有多个和在另一个型号上使用属于有什么区别
例如:
class Author < ActiveRecord::Base
end
class Book < ActiveRecord::Base
belongs_to :author
end
类作者
标签: Sql
Oracle
attributesoracle-sqldeveloperrename
我在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
不要总是写:
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 '
我有一个带有一组IP地址的表列,我需要找出它的地区/大陆,如下所述
------------------------------------------------------
ip_address | region
------------------------------------------------------
217.100.34.222 | North Holland
为此,我从下载了IP国家/地区/城市数据库,但其表和值如下所示
-----------
在月底,我需要拍摄一个快照,然后将结果附加到一个表中,该表将累积每个快照数据。请问我怎样才能做到这一点
例如,我是否计划每月运行一个存储过程来更新临时表,然后另一个过程更新该表?还是有更好的办法
问候,,
劳拉你所说的“快照”是什么意思?你是指表格内容的转储吗?如果你不断地将表格的全部内容与其以前副本的内容附加在一起,那么你会遇到指数级的增长,这将是一件坏事。请更具体地说明您想要实现的目标……为什么不使用DBMS的内置备份功能进行备份呢?Hi-Dai,我所说的快照是指运行一个查询,该查询的结果将
上面是我的查询输出,我需要在我的输出屏幕中显示计数值
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
我有一张桌子叫Opp桌
--------------------------------------
OppID Stage createdon newcolumn
--------------------------------------
1 Propsect 1-Jan 15-Jan
1 Qualify 15-Jan 25-Jan
1 Dev
我有一张这样的桌子:
MUN | TYPE | LENGTH
-----|-------|--------
001 | A | 5
001 | A | 2
002 | A | 3
002 | C | 8
003 | B | 6
MUN | TYPE | LENGTH
-----|-------|--------
001 | A | 7
001 | B | 0
001 | C | 0
002 | A
也许你能帮我。我实际上是在ORACLE平台上学习SQL的,我有几个练习
其中一个对我来说很难,我没有把它做好
这是练习:
哪些国家是所有组织的成员,哪些国家也是XY的成员
我有多个表,但我认为这项任务只需要一个表
表名:isMember(缩写(fk),国家(fk))
所以这些表看起来像:
Country / Abbreviation
USA / G-5
USA / G-7
USA / G-9
Canada /
我怎样才能得到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起使用
通常情况下,您可以通过订单执行此操作。??是用于排序的列/表达式。如果没有的顺序,使用
我有一个问题,当今年与我的公司签订合同的客户是新客户还是返回时,返回一个标志:
WITH Resultset AS(
SELECT
Cnt = COUNT(*)
,KliRC --personal identification number
FROM dbo.Smlouvy
WHERE VyplacenaCastka > 0
GROUP BY KliRC
)
SELECT
s.Kl
有没有办法将Paypal交易下载到csv中,并使用某种报告工具(Excel或在线)对其进行开箱即用的报告?
我目前正在寻找的是收到的付款报告,按数据每天的小时计算。我想知道我大部分的订单是在什么时候发出的
2017年7月9日更新:
下面是标准Paypal活动下载中数据的图像。如果我把它上传到Access/MySQL或者仅仅使用Excel,我应该使用wat SQL按小时获取订单报告吗?例如,我想知道我在早上7:00到8:00之间收到的订单是否最多,等等。
我们在这里做更多的编程。谢谢-我上传了数据
有没有办法为ORACLE SQL中星号(*)后面的不同列创建别名
是否有办法在*之后设置别名
SELECT * INDEX_1 AS INDECIES
FROM TABLE
WHERE INDEX_1 = 5
AND INDEX_2 = 6
;
没有
中SELECT语句的SELECT\u列表的语法如下:
这意味着,要么是星号,要么是行源限定的星号和离散列。*之后不可能有c_别名令牌
您可以做的是将星号和字段列表组合在一起,即使两个部分引用同一个表,如下所示:
SELECT
TA1.*,
我有一个SSIS包,它是我在自己的用户配置文件下开发的。
我现在有了一个新的数据源,它只允许Windows对其SQL数据库进行身份验证,因此我现在必须使用此服务帐户登录到我的环境,因为我无法提供SQL登录凭证
现在使用Windows服务帐户登录后,我已打开SSIS解决方案并进行更改以添加新的数据源,但是,当我尝试保存包时,出现错误“访问路径……被拒绝”
我也尝试过只执行包(测试这么长时间),但再次提示先保存包,然后得到相同的错误
我已检查Windows文件夹和文件权限以报告此用户名的有效权限,这
尝试做一些非常简单的事情,通过邮寄计算注册流量
我有一个名为signup\u flow的列-每行的整数值为1或0。正在尝试计算每个邮件的注册流量
我正在使用以下查询SUM(注册流量)和COUNT(注册流量)返回每个邮件的正确值。当我尝试执行一个简单的计算字段(sum/count*100)时,它返回0。这是我第一次使用Postgres,它不支持计算吗
SELECT mailing, SUM(signup_flow), COUNT(signup_flow),
((SUM(
这取决于运行块的程序和工具集
这个答案与Db2命令行处理器(DB2CLP)相关。它还可能与GUI工具相关,GUI工具允许您执行多个块并允许使用替代语句分隔符
对于DB2CLP,您可以在一个脚本中串联运行多个匿名块(一个接一个),前提是使用替代语句分隔符。这使Db2命令处理器(如果运行脚本的是命令处理器)能够区分块内的语句,区别于块的末尾和下一个块的开头。(仅仅开始和结束是不够的)
示例脚本:
--#SET TERMINATOR @
begin
statement1;
statement2
显示通过其所有包裹交付订单向其支付最大费用的客户的详细信息
我有一张客户表:
顾客
CustomerId CustomerName CustomerAddress
另一项业务
BusinessId Name向CustomerId收费
一个客户可能有很多费用,我们需要对每个客户的费用进行合计,找出这些合计费用的最大值,并显示支付了最高费用的客户
SELECT customerid,
MAX(scharge)
FROM
(
SELECT
customerid
我有以下两个表格:
Col1|Col2|Col3
Val1 T1
Val2 T2
Col1|Col2|Col3|Col4
Val1 test 1
Val1 test 2
Val1 T1 3
Val2 test 1
Val2 T2 2
我需要用表2的Col3之和更新表1的Col3的值,直到表2的Col2达到表1的Col2的值。因此,表1应该如下所示:
Col1|Col2|Col3
Val1 T1 6
Val2 T2 3
因此,对于T1,它加起来是1+
我使用以下命令将日期变量转换为YYYY和Mon
select
to_char(date, 'Mon') as month,
extract(year from date) as year,
v1,
count(v2) as count
from data
group by 1,2,3
order by 2,1;
但是,当我按进行排序时,它不会正确排序数据。所以我想我必须将Mon转换成一个数字或返回到一个日期才能正确排序。
CREATE TABLE sales (
id SERIAL PRIMARY KEY,
event_date DATE,
country VARCHAR,
channel VARCHAR,
sales DECIMAL
);
INSERT INTO sales
(event_date, country, channel, sales)
VALUES
('2020-02-08', 'DE', 'channel_01', '500'),
('2020-02-