2016-02-07 65 views
3

如何获取Cassandra-php中主键的最后一个值?我的意思是,我们有一个函数来得到PHP在最后一次查询mysql_insert_id生成的ID为MYSQL。同样,Cassandra还有什么?你能帮我解决这个问题吗?假设这是我的示例表,我如何获得主键的最后一个值?如何获取cassandra(php)中主键的最后一个值?

 userId     | BookId (primary key) | Genrecode 
     -------------------------------------------------------------- 
     22      | 9a9fa429c3494137  | ART4 
     56      | 9a9fa429b3496137  | 45RT 
     89      | 9a9ga429a3496132  | ER68 
     20      | 249ga429a9096542  | QW3Y 
     29      | 249kg429a2393652  | QWE5 
     12      | i55oa429a9093462  | 9ER4 
     08      | e4235k594ik9654r  | WRUO 

回答

0

由于阿拉尔提到的,有没有自动递增/ LAST_INSERT_ID(),以及相关的文章进入的原因。

话虽这么说,像这样的问题变成一个数据模型的问题。

我怎样才能获得主键的卡桑德拉(-php)的最后一个值

我建议在卡桑德拉创建一个单独的表来跟踪创建密钥。喜欢的东西: PRIMARY KEY((day),timestamp) and sort timestamp in DESC

这将允许您: SELECT key FROM key_log WHERE day=today limit 1 要获得特定一天创建的最新关键。根据生成的密钥的频率,您可能必须更改分区键才能更均匀地分配数据。

我觉得它通常是一个好主意,跟踪生成的密钥这样无论哪种方式,因为你永远不知道什么应用程序逻辑你最终需要支付,这可以节省你从应用大量的数据迁移。

0

你可以看到这样的回答:Cassandra column key auto increment这解释了为什么在卡桑德拉否auto_increment和必然,为什么没有LAST_INSERT_ID()。你需要生成有意义的键或使用UUID

相关问题