• SDiffByOneBucket
    SDiffByOneBucket

    返回一个集合与给定集合的差集的元素。这两个集合都在一个bucket中。

    1. key1 := []byte("mySet1") // 集合1
    2. key2 := []byte("mySet2") // 集合2
    3. bucket := "bucketForSet"
    4. if err := db.Update(
    5. func(tx *nutsdb.Tx) error {
    6. return tx.SAdd(bucket, key1, []byte("a"), []byte("b"), []byte("c"))
    7. }); err != nil {
    8. log.Fatal(err)
    9. }
    10. if err := db.Update(
    11. func(tx *nutsdb.Tx) error {
    12. return tx.SAdd(bucket, key2, []byte("c"), []byte("d"))
    13. }); err != nil {
    14. log.Fatal(err)
    15. }
    16. if err := db.View(
    17. func(tx *nutsdb.Tx) error {
    18. if items, err := tx.SDiffByOneBucket(bucket, key1, key2); err != nil {
    19. return err
    20. } else {
    21. fmt.Println("SDiffByOneBucket:", items)
    22. for _, item := range items {
    23. fmt.Println("item", string(item))
    24. }
    25. //item a
    26. //item b
    27. }
    28. return nil
    29. }); err != nil {
    30. log.Fatal(err)
    31. }