theo dõi

Gần nhất :

Tags

Thống kê câu hỏi

Chuyên mục : Lập trình
Topic : Sql Server
Hỏi lúc:
Lượt xem: 1,789

Nhiều mệnh đề where

Tạ Chí Khang Tạ Chí Khang
 02  02  01

Mình có bảng sau:

ID    Key   Value
 1     From  x
 1     To    Y
 1     CC    a
 2     From  Z
 2     To    X
 2     CC    b
 3     From  X
 3     To    Y  
 3     CC    c
 4     From  X
 4     To    Z
 4     CC    d

Mình muốn lấy Id 1 và 3, kết quả như vậy where key = "From" value = "x" where key = "To"value = "Y" (From-> To nên x-> y). Code truy vấn của mình như thế này

SELECT Id
FROM table_name
WHERE REGEXP_LIKE(KEY, '(^|\s)from(\s|$)', 'i')
    AND REGEXP_LIKE(value, '(^|\s)x(\s|$)', 'i')
    AND
WHERE
WHERE REGEXP_LIKE(KEY, '(^|\s)to(\s|$)', 'i')
    AND REGEXP_LIKE(value, '(^|\s)y(\s|$)', 'i')

Là có thể giải quyết vấn đề, nhưng không phải vậy :(.

1,789 xem 02 theo dõi 00 hữu ích hỏi –

Bạn biết ai đó có thể trả lời câu hỏi này?. Bạn có thể giúp đỡ bằng cách tìm những người giỏi nhất:

user user user user user

Hồ Ðắc Thái Hồ Ðắc Thái
 00  00  01

Join bảng để lọc dữ liệu:

SELECT ID
    FROM 
            Table t1
            INNER JOIN Table t2
            ON t1.ID = t2.ID
    WHERE
            t1.Key = 'From' AND
            t1.Value = 'x' AND
            t2.Key = 'To' AND
            t2.Value = 'y'
1,402 xem 00 hữu ích trả lời –