Questions tagged «sql»

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


5
Django仅选择具有重复字段值的行
假设我们在Django中有一个定义如下的模型: class Literal: name = models.CharField(...) ... 名称字段不是唯一的,因此可以具有重复的值。我需要完成以下任务:从模型中选择具有至少一个name字段重复值的所有行。 我知道如何使用普通的SQL来做到这一点(可能不是最好的解决方案): select * from literal where name IN ( select name from literal group by name having count((name)) > 1 ); 因此,可以使用django ORM选择它吗?还是更好的SQL解决方案?
96 sql  django  django-orm 

3
MYSQL仅转储某些行
我正在尝试在数据库中进行几行的mysql转储。然后,我可以使用转储将那几行上载到另一个数据库中。我拥有的代码正在运行,但是它会转储所有内容。我怎样才能使mysqldump只转储表的某些行? 这是我的代码: mysqldump --opt --user=username --password=password lmhprogram myResumes --where=date_pulled='2011-05-23' > test.sql
96 mysql  sql  mysqldump 

6
SQL标准转义列名?
是否有SQL标准来转义列名?如果不行,对mysql和sqlite有效吗?它也适用于sqlserver吗?
96 sql 

8
如何使用postgres在array_agg中排除空值,例如在string_agg中?
如果使用array_agg收集名称,我的名称将以逗号分隔,但是如果有null值,则该null也将被用作集合中的名称。例如 : SELECT g.id, array_agg(CASE WHEN g.canonical = 'Y' THEN g.users ELSE NULL END) canonical_users, array_agg(CASE WHEN g.canonical = 'N' THEN g.users ELSE NULL END) non_canonical_users FROM groups g GROUP BY g.id; 它返回,Larry,Phil而不是仅仅返回Larry,Phil(在我的9.1.2中显示NULL,Larry,Phil)。就像这个小提琴 相反,如果我使用string_agg(),它显示我只有名字(不包括空逗号或空)喜欢这里 问题是我已经Postgres 8.4安装在服务器上,并且string_agg()无法在该服务器上工作。有什么方法可以使array_agg类似于string_agg()吗?


7
脚本整个数据库SQL-Server
有什么方法可以从数据库中获取所有表,proc和其他对象的脚本?我知道有一个脚本可以编写数据库脚本,但是它只给了我某种顶级脚本,当然不是一个用于创建所有表,proc,udfs等的脚本。


6
使用MYSQL创建一个随机数
我想知道是否有一种方法可以选择随机生成的100和500之间的数字以及选择查询。 例如: SELECT name, address, random_number FROM users 我不必将此数字存储在db中,仅用于显示目的。 我尝试过类似的方法,但是无法正常工作。 SELECT name, address, FLOOR(RAND() * 500) AS random_number FROM users 希望有人帮助我。谢谢
95 mysql  sql 

12
我应该提交或回滚已读事务吗?
我有一个事务中执行的读取查询,以便可以指定隔离级别。查询完成后,该怎么办? 提交交易 回滚交易 不执行任何操作(这将导致事务在using块的末尾回滚) 进行每个操作有什么含义? using (IDbConnection connection = ConnectionFactory.CreateConnection()) { using (IDbTransaction transaction = connection.BeginTransaction(IsolationLevel.ReadUncommitted)) { using (IDbCommand command = connection.CreateCommand()) { command.Transaction = transaction; command.CommandText = "SELECT * FROM SomeTable"; using (IDataReader reader = command.ExecuteReader()) { // Read the results } } // To commit, or not to …


7
生成1-10范围内的随机数
由于我针对该问题进行的测试查询方法无法解决,因此我现在正在尝试其他方法。有没有办法告诉pg的random()函数让我只得到1到10之间的数字?
95 sql  postgresql  random 

13
主键/外键命名约定
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 改善这个问题 在我们的开发小组中,我们对主键和外键的命名约定进行了激烈的辩论。我们小组基本上有两种思想流派: 1: Primary Table (Employee) Primary Key is called ID Foreign table (Event) Foreign key is called EmployeeID 要么 2: Primary Table (Employee) Primary Key is called EmployeeID Foreign table (Event) Foreign key is called EmployeeID 我不希望在任何列中重复表的名称(因此,我更喜欢上面的选项1)。从概念上讲,它与其他语言中的许多推荐做法是一致的,在这种情况下,不要在对象的属性名称中使用对象的名称。我认为命名外键EmployeeID(或Employee_ID可能更好)可以告诉读者这是表的ID列Employee。 其他一些人则更喜欢选项2,在该选项中,您将主键命名为表名,以使整个数据库中的列名相同。我明白了这一点,但是现在您无法从视觉上区分主键和外键。 另外,我认为将表名包含在列名中是多余的,因为如果您将表视为实体,而将列视为该实体的属性或属性,则将其视为的ID属性,而Employee不是EmployeeID员工的属性。我不走了问我的同事他什么PersonAge或者PersonGender是。我问他他的年龄是多少。 因此,就像我说的那样,这是一场激烈的辩论,我们将继续对此进行讨论。我有兴趣获得一些新观点。

16
SQL(语言)的替代品是什么?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我偶尔会听到一些有关SQL如何烂透的东西,但这不是一种好语言,但我从未真正听到过很多有关它的替代方法的信息。那么,还有其他具有相同目的(数据库访问)的优秀语言,又有什么比SQL更好的语言呢?有没有使用这种替代语言的优秀数据库? 编辑:我熟悉SQL并一直使用它。我对此没有问题,我只是对可能存在的任何替代方案以及人们为什么更喜欢它们感兴趣。 我也不是在寻找替代类型的数据库(NoSQL运动),而是以不同的方式访问数据库。
95 sql  database 


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.