numaralı listede bulunmadığını seçin, her yerde aradım ama bir cevap bulamadım. Yani sorun doğru.MySQL, en az bir değerin
Bir attr eksik sıranın kimliği almak için bir sorgu istiyorum ben bu
table1
+------+--------+
| id | attr |
+------+--------+
| 1 | weight |
| 1 | width |
| 1 | length |
| 2 | width |
| 2 | length |
+------+--------+
gibi bir tablo var diyelim. Bu durumda, kimlik denetimi çekilişi, örn. ('ağırlık', 'genişlik', 'uzunluk', 'yükseklik') veya bir seç. SELECT DISTINCT attr FROM table1 WHERE id = 1.
NOT IN ve NOT EXISTS ile denedim ancak yalnızca 0 veya tüm sonuçları alabilirim.
SELECT id FROM table1
WHERE attr NOT IN ('weight', 'length', 'width','height')
ve
SELECT id
FROM table1 t1
WHERE NOT EXISTS
(
SELECT 1
FROM table1 t2
WHERE t2.name NOT IN('weight', 'length', 'width','height')
)
DÜZENLEME
tablo
aşağıdaki alıyorum nasıl+------+--------+
| id | attr |
+------+--------+
| 1 | weight |
| 1 | width |
| 1 | length |
| 1 | height |
| 2 | width |
| 2 | length |
| 2 | other |
+------+--------+
gibi olur? yani. Satır kimliği için kayıp attr Bunu yapmanın birkaç yolu vardır
+------+--------+
| id | attr |
+------+--------+
| 2 | width |
| 2 | length |
+------+--------+
benzersiz değilse o Kimlik sütunu amacı yendi bilmelidir: Burada birini kullanarak toplama var. –
Buradaki kimlik basittir, sadece tanıtım amacıyla ürün numarası gibi bir şey olabilir. –