我正在開發一個PHP腳本,我有如下表:MySQL的組行一級排序由另一列
+----+-----------+----------+--------------+
| id | id_parent | position | feature |
+----+------------+---------+--------------+
| 1 | 1 | 2 | -B-A-C- |
| 2 | 1 | 3 | -B-C- |
| 3 | 2 | 4 | -C-B- |
| 4 | 3 | 1 | -A-B- |
| 5 | 1 | 6 | -A-C- |
| 6 | 2 | 5 | -C-B- |
| 7 | 2 | 7 | -B-C- |
| 8 | 3 | 8 | -A- |
+----+-----------+----------+--------------+
從這個表,我想選擇所有與「功能」的行LIKE「%-A-%」,但首先顯示最低位置的結果,然後顯示所有具有相同值的行作爲第一個結果的列「id_parent」,然後排第二個最低的「位置」,所有行具有與第二最低「位置」相同結果的「id_parent」的行,等等...... 所以最終結果應該是:
+----+-----------+----------+--------------+
| id | id_parent | position | feature |
+----+------------+---------+--------------+
| 4 | 3 | 1 | -A-B- |
| 8 | 3 | 8 | -A- |
| 1 | 1 | 2 | -B-A-C- |
| 5 | 1 | 6 | -A-C- |
+----+-----------+----------+--------------+
出於某種原因,我不能在這裏解釋我需要有和HAVING子句來選擇正確的「功能」值(... HAVING'功能'LIKE'%-A-%'...)。
是否有可能使用MySQL(可能沒有子查詢)或通過使用PHP處理數據結果來做到這一切?
這是一個倒退的過程。這是一個糟糕的設計。如果您有多個功能,請考慮將它們標準化存儲在單獨的表格中 - 每個功能都有一個單獨的行。 – Strawberry