Questions tagged «sql»

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

6
如何在MySQL中选择带空格的列名
这个问题已经在这里有了答案: 何时在MySQL中使用单引号,双引号和反引号 (12个答案) 4个月前关闭。 我正在一个项目中,另一个开发人员创建了一个表,该表的列名称为'Business Name'。那是两个词之间的空格。如果我SELECT使用“公司名称”运行语句,则说没有名称为“公司”的列。 我怎么解决这个问题?
90 mysql  sql 

16
SQL查询:从表中删除除最新N之外的所有记录?
是否可以构建单个mysql查询(不带变量)以从表中删除所有记录,但最新的N(按ID desc排序)除外? 像这样的东西,只有它不起作用:) delete from table order by id ASC limit ((select count(*) from table ) - N) 谢谢。
90 sql  mysql 



4
使用LIMIT / OFFSET运行查询,并获得总行数
出于分页目的,我需要使用LIMIT和OFFSET子句运行查询。但是我还需要计算不带LIMITandOFFSET子句的查询将返回的行数。 我要跑步: SELECT * FROM table WHERE /* whatever */ ORDER BY col1 LIMIT ? OFFSET ? 和: SELECT COUNT(*) FROM table WHERE /* whatever */ 同时。有没有办法做到这一点,特别是让Postgres优化它的方法,从而使其比单独运行它们都快?

14
有C#IN运算符吗?
在SQL中,可以使用以下语法: SELECT * FROM MY_TABLE WHERE VALUE_1 IN (1, 2, 3) C#中是否有等效项?IDE似乎将“ in”识别为关键字,但我似乎无法找到任何有关它的信息。 因此,是否可以执行以下操作: int myValue = 1; if (myValue in (1, 2, 3)) // Do something 代替 int myValue = 1; if (myValue == 1 || myValue == 2 || myValue == 3) // Do something

8
MySQL-如何在邮政编码前面加上“ 0”?
在我的MySQL InnoDB数据库中,我要清除的邮政编码数据很脏。 干净的邮政编码数据是指我的邮政编码全5位(例如“ 90210”)。 但是由于某种原因,我在数据库中注意到对于以“ 0”开头的邮政编码,0已被删除。 因此,“ 纽约Holtsville的 ”与邮政编码“ 00544”存储在我的数据库“ 544” 和 “ 戴德姆,MA ”与邮政编码“ 02026”存储在我的数据库为“ 2026”。 我可以使用哪种SQL在长度不为5位的任何邮政编码前面填充“ 0”?意思是,如果邮政编码的长度为3位,则前面板为“ 00”。如果邮政编码的长度为4位,则前面板仅为“ 0”。 更新: 我只是将邮政编码更改为数据类型VARCHAR(5)


8
将数据从一列复制到另一列(在另一张表中)
我想将数据从另一表的一列复制到另一表的另一列。我怎样才能做到这一点? 我尝试了以下方法: Update tblindiantime Set CountryName =(Select contacts.BusinessCountry From contacts) 但它没有用。 我要将联系人表的“ BusinessCountry”列复制到tblindiantime表的“ CountryName”列。
89 sql 


8
首先按特定字段值排序
我有一个包含3列的表格: id | name | priority -------------------- 1 | core | 10 2 | core | 9 3 | other | 8 4 | board | 7 5 | board | 6 6 | core | 4 我想使用以下顺序对结果集进行排序,priority但首先是那些name=core优先级较低的行。结果应如下所示 id | name | priority -------------------- 6 | core | 4 2 …


7
T-SQL:遍历一组已知值
这是我的情况: 假设我有一个存储过程,在该存储过程中,我需要在一组特定ID上调用另一个存储过程。有没有办法做到这一点? 即而不是需要这样做: exec p_MyInnerProcedure 4 exec p_MyInnerProcedure 7 exec p_MyInnerProcedure 12 exec p_MyInnerProcedure 22 exec p_MyInnerProcedure 19 做这样的事情: *magic where I specify my list contains 4,7,12,22,19* DECLARE my_cursor CURSOR FAST_FORWARD FOR *magic select* OPEN my_cursor FETCH NEXT FROM my_cursor INTO @MyId WHILE @@FETCH_STATUS = 0 BEGIN exec p_MyInnerProcedure @MyId …
89 sql  sql-server  tsql 

3
MySQL:按字段大小/长度排序
这是一个表结构(例如测试): __________________________________________ | Field Name | Data Type | |________________|_________________________| | id | BIGINT (20) | |________________|_________________________| | title | varchar(25) | |________________|_________________________| | description | text | |________________|_________________________| 查询如下: SELECT * FROM TEST ORDER BY description DESC; 但是我想按字段大小/字段描述的长度排序。字段类型将为TEXT或BLOB。

5
PostgreSQL unnest(),元素编号
当我有一个带有单独值的列时,可以使用以下unnest()函数: myTable id | elements ---+------------ 1 |ab,cd,efg,hi 2 |jk,lm,no,pq 3 |rstuv,wxyz select id, unnest(string_to_array(elements, ',')) AS elem from myTable id | elem ---+----- 1 | ab 1 | cd 1 | efg 1 | hi 2 | jk ... 如何包含元素编号?即: id | elem | nr ---+------+--- 1 | ab …

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.