Tag: sql

我怎样才能比较两组1000个号码?

我必须检查大约1000个数字与其他1000个数字。 我加载和比较他们的服务器端: foreach( $numbers1 as $n1 ) { foreach( $numbers2 as $n2 ) { if( $n1 == $n2 ) { doBla(); } } } 这花了很长时间,所以我试图用两个隐藏的div元素做相同的客户端比较。 然后使用JavaScript进行比较。 加载页面仍然需要45秒(使用隐藏的div元素)。 我不需要加载不相同的数字。 有一个更快的algorithm? 我想比较他们的数据库端,只是加载错误号码,然后做一个Ajax调用其余的非错误号码。 但是MySQL数据库是否足够快?

如何在COUNT聚合中包含“零”/“0”?

我刚刚得到了一些SQL的困扰。 我不认为我可以出色地提出这个问题 – 所以让我给你看看。 我有两张桌子,一个叫人,一个叫约会。 我试图返回一个人的约会数量(包括如果他们有零)。 约会包含person_id ,每个约会都有一个person_id 。 所以COUNT(person_id)是一个明智的方法。 查询: SELECT person_id, COUNT(person_id) AS "number_of_appointments" FROM appointment GROUP BY person_id; 将正确返回一个person_id具有的约会的数量。 然而,一个没有任命的人不会被退回(显然,因为他们不在该表中)。 调整声明,从人表采取person_id给我这样的: SELECT person.person_id, COUNT(appointment.person_id) AS "number_of_appointments" FROM appointment JOIN person ON person.person_id = appointment.person_id GROUP BY person.person_id; 但是,这仍然只会返回一个person_id有预约的人,而不是我想要的,这是一个有约会的人的回报! 有什么build议吗?

一个进程成为死锁受害者的原因

我有一个select过程需要很长时间才能完成,大约5到10分钟。 我目前不使用NOLOCK作为MS SQL数据库引擎的提示。 同时我们有另一个进程进行更新并插入到相同的数据库和相同的表中。 第一个过程已经开始,最近过早地结束了一个信息 SQLEXCEPTION:事务在另一个进程的锁资源上死锁,并被选为死锁受害者。 这个第一个进程在相同条件下的其他站点运行,但数据库较小,因此select语句花费的时间要短得多(大约30秒左右)。 在这些其他网站中,我没有在这些其他网站上看到死锁消息。 我也没有在最初出现问题的网站上得到这个消息,但是,我认为,随着数据库的增长,我相信我必须跨越一些门槛。 这是我的问题: 执行事务所花费的时间是否会使关联进程更可能被标记为死锁受害者。 如果我用NOLOCK提示执行select,这是否会解决问题? 我怀疑select语句中作为WHERE子句的一部分检查的date时间字段正在导致查询时间慢。 我可以根据这个字段创build一个索引吗? 这是可取的吗?

为数据库中所有存储过程的用户授予执行权限?

我从旧数据库生成脚本,创build一个新的数据库,并从旧数据库导入所有数据。 但是迄今为止,没有用户拥有执行存储过程的权限。 我知道我可以使用 GRANT EXECUTE ON [storedProcName] TO [userName] 但是,如果只是几个程序,我就有大约100个,那么对于特定的用户来说,最简单的方法是给予他们全部的执行权限。 提前致谢。

这黑客试图做什么?

如果您search: http://www.google.co.uk/search?q=0x57414954464F522044454C4159202730303A30303A313527&hl=en&start=30&sa=N 你会看到很多例子,试图沿着下面的黑客行为: 1) declare @q varchar(8000) select @q = 0x57414954464F522044454C4159202730303A30303A313527 exec(@q) — 它究竟在做什么? 它试图在哪个数据库? 你知道有关这方面的任何build议吗?

只将行插入到只有一个IDENTITY列的表中

我有一个只有一列的pipe理员表adminId,它是主键。 由于业务规则,它必须是这样的。 我想一劳永逸地了解如何编写存储过程,像这样在表中插入值。 我正在使用SQL Server和T-SQL并尝试使用SCOPE_IDENTITY(),但由于该表的INSERT_IDENTITY为false或closures,所以不起作用。 我真的不想插入一个虚拟值只是为了能够插入一个新的行。 谢谢!

在SQL Server中存储IP地址的最合适的数据types是什么?

什么应该是在SQL Server中存储IPv4地址最推荐的数据types? 或者也许有人已经为它创build了一个用户SQL数据types(.Net程序集)? 我不需要sorting。

在Postgresql中,在两列的组合上强制唯一

我想在postgresql中设置一个表格,使得两列在一起必须是唯一的。 可以有任何值的多个值,只要没有两个共享这两个值。 例如: CREATE TABLE someTable ( id int PRIMARY KEY AUTOINCREMENT, col1 int NOT NULL, col2 int NOT NULL ) 所以, col1和col2可以重复,但不能同时重复。 所以,这将被允许(不包括id) 1 1 1 2 2 1 2 2 但不是这样的: 1 1 1 2 1 1 — would reject this insert for violating constraints

如何将date时间插入到SQL数据库表中?

如何将date时间插入到SQL数据库表中? 有没有办法通过在C#/ .NET插入命令插入此查询?

Oracle从select中插入更多列的表

我想从一个select语句插入到一个表中,但是,从select语句返回了3列,并且该表有4列,我想为额外列中的所有行添加0。 任何人都可以给我一个示例SQL查询? 谢谢!