Questions tagged «sql»

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

3
如何在SQL中的一行上声明和分配变量
我想要类似的东西 DECLARE myVariable nvarchar[MAX] = "hello world". 如果您向我展示如何在字符串中编码引号,则可获得加分。 例如: 我想要读取字符串 John said to Emily "Hey there Emily" 我的尝试是 DECLARE myVariable nvarchar[MAX] = "John said to Emily \"Hey there Emily\""

6
MySQL-如何从存储过程中退出/退出
我有一个非常简单的问题,但是我没有使用Mysql从SP退出任何简单的代码。谁能和我分享该怎么做? CREATE PROCEDURE SP_Reporting(IN tablename VARCHAR(20)) BEGIN IF tablename IS NULL THEN #Exit this stored procedure here END IF; #proceed the code END;




9
如何在ALTER TABLE语句中添加“ ON DELETE CASCADE”
我的表中有一个外键约束,我想向其添加ON DELETE CASCADE。 我已经试过了: 修改表child_table_name 修改约束fk_name 外键(child_column_name) 在删除级联上引用parent_table_name(parent_column_name); 不起作用 编辑: 外键已经存在,外键列中有数据。 执行该语句后收到的错误消息: ORA-02275:此类引用约束已存在于表中
130 sql  oracle 



8
在数据库中存储性别(性别)
我想以尽可能少的(大小/性能)成本将用户的性别存储在数据库中。 到目前为止,我想到了3种情况 INT - 在代码与枚举对齐(1 =男,2 =女性,3 = ...) char(1) - 存储m,f或另一个单个字符标识符 位 (布尔值) - 此选项是否有适当的字段名称? 我想问的原因是因为这个的答案,其提到字符是小比布尔值。 我要澄清,我使用MS SQL 2008,它DOES其实有位数据类型。

11
SQL“选择不在子查询中的位置”不返回结果
免责声明:我已经解决了这个问题(我认为),但是我想将此问题添加到Stack Overflow中,因为我无法(轻松地)在任何地方找到它。另外,有人可能比我有更好的答案。 我有一个数据库,其中一个表“ Common”被其他几个表引用。我想查看Common表中的哪些记录是孤立的(即,没有任何其他表的引用)。 我跑了这个查询: select * from Common where common_id not in (select common_id from Table1) and common_id not in (select common_id from Table2) 我知道有孤立的记录,但没有记录返回。为什么不? (如果需要的话,这是SQL Server。)
130 sql  sql-server  tsql 


3
WHERE子句中的引用别名(在SELECT中计算)
SELECT (InvoiceTotal - PaymentTotal - CreditTotal) AS BalanceDue FROM Invoices WHERE BalanceDue > 0 --error 在WHERE子句中不能使用在选定列的列表中设置为变量的计算值“ BalanceDue”。 有办法吗?在这个相关的问题(在Where子句中的MySQL Select Statment中使用变量)中,答案似乎是,实际上,不,您只需两次写出计算(并在查询中执行该计算),就没有这是令人满意的。
130 sql  sql-server  tsql 

4
SQL-搜索字符串时忽略大小写
我在表中有以下数据 PriceOrderShipped PriceOrderShippedInbound PriceOrderShippedOutbound 在SQL中,我需要编写一个查询来搜索表中的字符串。在搜索字符串时,应忽略大小写。对于下面提到的SQL查询 SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%PriceOrder%' 给出以上所有数据,而 SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%Priceorder%' 不给。 例如。当我搜索“ PriceOrder”或“ priceOrder”时,它起作用,但“ priceorder”或“ Priceorder”不起作用。我已尝试使用COLLATE使用以下查询,但无法正常工作。让我知道我哪里出错了。 SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME COLLATE latin1_general_cs LIKE '%Priceorder%'

18
错误1452:无法添加或更新子行:外键约束失败
我已经在MySQL Workbench中创建了表,如下所示: ORDRE表: CREATE TABLE Ordre ( OrdreID INT NOT NULL, OrdreDato DATE DEFAULT NULL, KundeID INT DEFAULT NULL, CONSTRAINT Ordre_pk PRIMARY KEY (OrdreID), CONSTRAINT Ordre_fk FOREIGN KEY (KundeID) REFERENCES Kunde (KundeID) ) ENGINE = InnoDB; 产品表: CREATE TABLE Produkt ( ProduktID INT NOT NULL, ProduktBeskrivelse VARCHAR(100) DEFAULT NULL, ProduktFarge …

22
如何获取MySQL中的下一个/上一个记录?
假设我有ID为3、4、7、9的记录,并且我希望能够通过下一个/上一个链接导航到另一个。问题是,我不知道如何获取具有最近的较高ID的记录。 因此,当我有一个ID为4的记录时,我需要能够获取下一个现有记录,即7。查询可能看起来像 SELECT * FROM foo WHERE id = 4 OFFSET 1 如何获取下一个/上一个记录,而不获取整个结果集并手动进行迭代? 我正在使用MySQL 5。
129 sql  mysql 

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.