Tag: sql

在Java中重置时间戳的时间部分

在Java中,给定一个时间戳,如何将时间部分单独重置为00:00:00,以便时间戳表示该特定日子的午夜? 在T-SQL中,这个查询将做到这一点,但我不知道如何在Java中做到这一点。 SELECT CAST( FLOOR( CAST(GETDATE() AS FLOAT ) ) AS DATETIME) AS 'DateTimeAtMidnight';

SQL内部连接两个以上的表

我现在可以通过以下方式查询外键/主键相等的两个表的连接。 $result = mysql_query("SELECT * FROM `table1` INNER JOIN `table2` ON table1.primaryKey=table2.table1Id"); 我想扩展到多个表(所有的外键相同)。 我正在尝试下面的代码不返回任何东西。 任何人都可以指出我做错了什么? $result = mysql_query("SELECT * FROM `table1` INNER JOIN `table2` INNER JOIN table3 ON table1.primaryKey=table2.table1Id=table3.table1Id");

CakePHP使用JOIN查找方法

嗨, 我需要使用CakePHP find方法执行以下查询: SELECT * FROM `messages` INNER JOIN users ON messages.from = users.id WHERE messages.to = 4 ORDER BY messages.datetime DESC 基本上我有: messages模型的messages表 users表与User模型 并希望在一个查询中从两个表中检索信息。 users.id字段与messages.from字段相同,所以这就是连接所在的位置。 我在我的MessagesController这样做,所以它需要是这样的: $this->Message->find(); 谢谢

如何使用ms sql来更新和订购

理想情况下,我想这样做: UPDATE TOP (10) messages SET status=10 WHERE status=0 ORDER BY priority DESC; 用英文:我想从数据库中获得前10个可用(状态= 0)的消息并locking它们(状态= 10)。 应该先获得优先级更高的消息。 不幸的是MS SQL不允许更新中的order by子句。 无论如何如何规避这一点?

在数据库中获取表和字段的列表

我正在创build一个基本的ORM(纯粹是为了好玩),并想知道,是否有办法返回数据库中的表的列表,还有每个表的字段? 使用这个,我想能够遍历结果集(在C#中),然后说结果集中的每个表,做到这一点(例如使用reflection来做一个类,将做或包含xyz)。 除此之外,SQL Server有哪些好的在线博客? 我知道这个问题实际上是关于在Sql Server中使用系统SP和数据库的问题,我对一般的查询很满意,所以我对一些涵盖这种function的博客感兴趣。 谢谢

为什么在MS Access数据库中是“是”-1的值?

我正在查看MS Access中的链接数据。 “是/否”字段的值为“是”,否则为“0”。 有人可以解释为什么这样的反直觉价值被用于“是”吗? (显然,它应该是1和0) 我想一定有一个很好的理由,我想知道。

如何在整个数据库中查找string?

我有一个特定的string,例如“123abcd”,但我不知道表的名称,甚至不知道我的SQL Server数据库表中的列的名称。 我想find一个select并显示相关string的所有列,所以我想知道这样的: select * from Database.dbo.* where * like '%123abcd%' 由于显而易见的原因,它不工作,但有一个简单的方法来创build一个select语句来做这样的事情?

衡量查询性能:“执行计划查询成本”与“时间”

我试图确定两个不同的查询的相对performance,并有两种方法来衡量这一点对我来说: 1.运行两个和每个查询时间 2.运行并从实际执行计划中获得“查询成本” 这是我运行查询时间的代码… DBCC FREEPROCCACHE GO DBCC DROPCLEANBUFFERS GO DECLARE @start DATETIME SET @start = getDate() EXEC test_1a SELECT getDate() – @start AS Execution_Time GO DBCC FREEPROCCACHE GO DBCC DROPCLEANBUFFERS GO DECLARE @start DATETIME SET @start = getDate() EXEC test_1b SELECT getDate() – @start AS Execution_Time GO 我得到的是以下内容: Stored_Proc Execution_Time Query Cost (Relative To […]

没有主键的表格

我有几个表,其唯一的唯一数据是唯一标识(Guid)列。 因为GUID是非顺序的(而且它们是客户端生成的,因此我不能使用newsequentialid()),所以我在这个ID字段上创build了一个非主要的非聚集索引,而不是给这些表聚集主键。 我想知道这种方法的性能影响是什么。 我曾经看到一些人build议,即使表没有任何意义,表也应该有一个自动递增(“identity”)int作为集群主键,因为这意味着数据库引擎本身可以快速使用该值查找一行,而不必使用书签。 我的数据库在一堆服务器上被合并复制,所以我已经避开了身份列,因为它们有点复杂。 你怎么看? 表格是否有主键? 或者没有任何聚集索引,如果没有明智的列索引这种方式?

什么时候应该使用全文索引?

我们有一大堆的“search”客户,客户等的查询。您可以通过名字,电子邮件等进行search。我们使用LIKE语句按以下方式: SELECT * FROM customer WHERE fname LIKE '%someName%' 全文索引是否有帮助? 我们正在使用SQL Server 2005。