我首先收到以下所有错误:
ORA-12162: TNS:net 服务名称指定不正确
当我导出 ORACLE_SID 时,我可以运行任何命令,但出现以下错误:
连接到空闲实例
12C 中的 ALERTLOG 文件在哪里?
我在 ORACLE_HOME/log 文件夹中看不到任何文件。我正在使用 ubuntu 14.04 顺便说一句。
我的数据库大约 10 GB,我使用完整恢复模式。
有时我必须一次添加大量数据,在此期间,我将恢复模式从完整更改为批量记录。
我想要一个可以在所有数据库上读取、写入和查看定义的 SQL Server 登录名。
做完之后:
USE master;
GRANT VIEW ANY Definition TO [a];
Run Code Online (Sandbox Code Playgroud)
看起来我必须授予连接并读取/写入每个数据库。
没有更简单的方法吗?
我正在运行一个相关的子查询来找出不同城市、州的供应商列表(按供应商名称),即我们想知道与其他供应商没有共同城市和州的供应商。似乎可以自行加入。
如果可能,请仅提供提示。
供应商表是:
Vendors(VendorID P, VendorCity, VendorState, VendorName,...)
Run Code Online (Sandbox Code Playgroud)
这就是我所拥有的:
Select VendorName, VendorCity, VendorState from Vendors AS V1 where
VendorCity, VendorState NOT IN (Select VendorCity, VendorState FROM
Vendors AS V2 where V2.VendorID <> V1.VendorID)
Run Code Online (Sandbox Code Playgroud)
这是我收到的错误消息:
消息 4145,级别 15,状态 1,第 2 行 在“,”附近的预期条件的上下文中指定的非布尔类型的表达式。
我不明白为什么要引用布尔类型,因为这不是 EXISTS 或其他相关查询。
我的数据库中有很多记录,为了数据分析,我需要显示每天的记录数,包括我没有任何记录的日子,所以结果是0.
例如我有这些记录(SQL Fiddle):
CREATE TABLE Tabs
(`timestamp` varchar(10), `id` int)
;
INSERT INTO Tabs
(`timestamp`, `id`)
VALUES
('2015-01-01', 1),
('2015-01-01', 2),
('2015-01-02', 3),
('2015-01-02', 4),
('2015-01-02', 5),
('2015-01-04', 6),
('2015-01-05', 7),
('2015-01-05', 8)
;
Run Code Online (Sandbox Code Playgroud)
当我使用此查询时:
SELECT `timestamp`, COUNT(*)
FROM Tabs
GROUP BY `timestamp`
Run Code Online (Sandbox Code Playgroud)
我得到了结果:
timestamp COUNT(*)
2015-01-01 2
2015-01-02 3
2015-01-04 1
2015-01-05 2
Run Code Online (Sandbox Code Playgroud)
但我也需要2015-01-03with 0,所以对我来说正确的输出是:
timestamp COUNT(*)
2015-01-01 2
2015-01-02 3
2015-01-02 0
2015-01-04 1
2015-01-05 2
Run Code Online (Sandbox Code Playgroud)
请问我怎样才能意识到呢?
这是我使用查询返回的结果集:
empname itemssold
JJ 14
Run Code Online (Sandbox Code Playgroud)
但这是我想要的结果集:
empname itemssold
AA 0
BB 0
CC 0
DD 0
JJ 14
RR 0
Run Code Online (Sandbox Code Playgroud)
它似乎会拉动所有员工,直到我将where子句添加到我的查询中,这让我想知道我是否在错误的位置添加了它,或者我是否错误地设置了我的查询?
以下是我使用的 DDL 和我的查询:
Create Table #ShowAll
(
empname varchar(1000)
,empid varchar(100)
)
Create Table #Data
(
empid varchar(100)
,itemssold int
,beenverified varchar(100)
)
Insert Into #ShowAll Values
('JJ', 'J1'),
('AA', 'A1'),
('BB', 'B1'),
('CC', 'C1'),
('DD', 'D1'),
('RR', 'R1')
Insert Into #Data Values
('J1','14', 'Yes'),
('A1', '12','No'),
('B1', '13', 'No')
Select sa.empname
, Da.itemssold
FROM #ShowAll sa …Run Code Online (Sandbox Code Playgroud) 这些是我的 2 个表id_hierarchy和hierarchy_link:
CREATE TABLE id_hierarchy
(
id integer NOT NULL,
hierarchy integer
);
insert into id_hierarchy values (11,2),(22,3),(44,5),(77,8),(170,11),
(190,13),(240,18),(255,20);
CREATE TABLE hierarchy_link
(
hid integer NOT NULL,
parent_hid integer
);
insert into hierarchy_link values (1,0),(2,1),(3,2),(5,3),(8,5),(11,8),
(13,11),(15,13),(18,15),(20,18);
Run Code Online (Sandbox Code Playgroud)
与id_hierarchy.hierarchy=hierarchy_link.hid
对于以下 CTE 查询:
with recursive rt1 as(
select id,hid,parent_hid||'->'||hid as str
from rt2
where rt2.parent_hid=1
union
select t.id,t.hid,s.str||'->'||t.hid as str
from rt2 t
inner join rt1 s on (s.hid=t.parent_hid)
),
rt2 as (
select id, …Run Code Online (Sandbox Code Playgroud) 你能帮我解决一个问题吗。任务是在 MySQL 数据库中插入一条记录。条款:
表 'NETFLOW'.'Month' 中的关键列是:
事情是尽快查询,如果可能的话,在一个查询中。
当前查询的文本是:
INSERT INTO `netflow`.`Month` (`Year`, `Month`, `Day`, `Hour`, `srcaddr`,`dstaddr`, `doctets`)
(
SELECT
YEAR( FROM_UNIXTIME( `unix_secs` ) ) AS `YEAR`,
MONTH( FROM_UNIXTIME( `unix_secs` ) ) AS `MONTH`,
DAYOFMONTH( FROM_UNIXTIME( `unix_secs` ) ) AS `DAY`,
HOUR( FROM_UNIXTIME( `unix_secs` ) ) AS `HOUR`,
`srcaddr` ,
`dstaddr` ,
`doctets`
FROM `netflow`.`raw`
WHERE `unix_secs` <= 1394179200
GROUP BY
`YEAR`,
`MONTH`,
`DAY`,
`HOUR`,
`srcaddr`,
`dstaddr`
)
ON …Run Code Online (Sandbox Code Playgroud) 我想使用 case 语句总结一些值。我的问题是编译器会抱怨,如果我没有在查询的末尾添加一个组,这会否定我的 Distinct,哈哈。例如,在我下面的示例中,red12即使 1 个条目不符合上述任何条件,这也会返回 2 个条目,但这让Group By我感到困惑!我怎样才能运行这个查询并只返回适用的结果,即case statements显示什么?
Create Table #Bobsled
(
[event] varchar(100)
,[time] decimal(18,4)
,employeeID varchar(25)
,name varchar(500)
)
Insert Into #Bobsled Values
('Walk', '16.32','red12', 'red arrow')
,('Eat', '5.12', 'red12', 'red arrow')
,('Run', '32.13','pink01', 'pink pig')
,('Walk', '2.12', 'bl81', 'blue fire')
,('Sleep', '8.12', 'gr99', 'green pony')
Select Distinct
employeeid
,case when [event] = 'Walk' then SUM([time]) else 0 end as walktime
,case when [event] = 'RUN' then SUM([time]) else 0 …Run Code Online (Sandbox Code Playgroud) 我已在主服务器 A 和辅助服务器 B 中配置了日志传送。
一切正常,直到我使备用数据库联机。
用户无法登录辅助 serverB 数据库(位于已联机的辅助服务器上)
谁可以帮我这个事?
sql-server-2008 sql-server sql-server-2008-r2 sql-server-2012
sql-server ×6
mysql ×2
t-sql ×2
backup ×1
cte ×1
duplication ×1
insert ×1
oracle ×1
permissions ×1
postgresql ×1
role ×1
select ×1
subquery ×1