sql 相关问题

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

从sp

如何在同一模式中调用存储过程,而无需在编码另一个存储过程时指定完整的模式名称。这些是DB2中的SQL PL程序。 第一个SP: 创建过程

回答 3 投票 0



从表

及其父行才能获得SMTH,例如:

回答 1 投票 0


无法使用变量的数据库?

DECLARE @VMDC VARCHAR(40), @VADC VARCHAR(40), @VBDC VARCHAR(40) BEGIN SET @VMDC = 'EMPRESAMDC_6666'; SET @VADC = REPLACE(@VMDC, 'MDC', 'ADC'); SET @VBDC = REPLACE(@VMDC, 'MDC', 'BDC'); USE @VMDC; 'CREATE OR ALTER PROCEDURE...' USE @VADC; 'CREATE OR ALTER PROCEDURE...' USE @VBDC; 'CREATE OR ALTER PROCEDURE...' END;

回答 1 投票 0

不能使用变量的数据库? -SQLServer

DECLARE @VMDC VARCHAR(40), @VADC VARCHAR(40), @VBDC VARCHAR(40) BEGIN SET @VMDC = 'EMPRESAMDC_6666'; SET @VADC = REPLACE(@VMDC, 'MDC', 'ADC'); SET @VBDC = REPLACE(@VMDC, 'MDC', 'BDC'); USE @VMDC; 'CREATE OR ALTER PROCEDURE...' USE @VADC; 'CREATE OR ALTER PROCEDURE...' USE @VBDC; 'CREATE OR ALTER PROCEDURE...' END;

回答 1 投票 0

-pivot/undivot不同的列标题到行值

我从存储过程中获取数据,如以下格式 在此处输入图像描述 帮助我将值转换为单个记录,而不是在记录堤防中保持一个值的一个值...

回答 1 投票 0


在合并查询中插入和更新并插入log

--Drop table SourceTempProducts --Drop table TargetTempProducts CREATE TABLE SourceTempProducts( ProductID INT, ProductName VARCHAR(50), Price DECIMAL(9,2) ) GO INSERT INTO SourceTempProducts(ProductID,ProductName, Price) VALUES(1,'Table',100) INSERT INTO SourceTempProducts(ProductID,ProductName, Price) VALUES(2,'Desk',80) INSERT INTO SourceTempProducts(ProductID,ProductName, Price) VALUES(3,'Chair',50) INSERT INTO SourceTempProducts(ProductID,ProductName, Price) VALUES(4,'Computer',300) GO CREATE TABLE TargetTempProducts( ProductID INT, ProductName VARCHAR(50), Price DECIMAL(9,2) ) GO INSERT INTO TargetTempProducts(ProductID,ProductName, Price) VALUES(1,'Table',100) INSERT INTO TargetTempProducts(ProductID,ProductName, Price) VALUES(2,'Desk',180) INSERT INTO TargetTempProducts(ProductID,ProductName, Price) VALUES(5,'Bed',50) INSERT INTO TargetTempProducts(ProductID,ProductName, Price) VALUES(6,'Cupboard',300) GO SELECT * FROM SourceTempProducts SELECT * FROM TargetTempProducts --Merge Target from Source DECLARE @MergeResults TABLE ( ActionType NVARCHAR(10) ); MERGE TargetTempProducts AS Target USING SourceTempProducts AS Source ON Source.ProductID = Target.ProductID -- For Updates WHEN MATCHED THEN UPDATE SET Target.ProductName = Source.ProductName, Target.Price = Source.Price --Logic or parameter to check is some thing added -- For Inserts WHEN NOT MATCHED BY Target THEN INSERT (ProductID,ProductName, Price) VALUES (Source.ProductID,Source.ProductName, Source.Price) --logic or parameter to check is some thing updated OUTPUT $ACTION INTO @MergeResults; -- To get separate counts: -- Get separate counts SELECT (SELECT COUNT(*) FROM @MergeResults WHERE ActionType = 'INSERT') AS InsertedRows, (SELECT COUNT(*) FROM @MergeResults WHERE ActionType = 'UPDATE') AS UpdatedRows; --Logic for log if(added>0 AND updated>0 //or some other logic) BEGIN insert into LogTable(temp,temp)values('Data Added and Updated','Data Added and Updated') END SELECT * FROM SourceTempProducts SELECT * FROM TargetTempProducts

回答 1 投票 0


使用Postgres+PHP的解除疑问?

有一种方法可以通过PHP执行针对PostgreSQL的无封闭查询,或者至少限制驱动程序使用的本地缓冲区的大小?

回答 4 投票 0




dogs

回答 1 投票 0





最新问题
© www.soinside.com 2019 - 2025. All rights reserved.