|
Выборка с mysql LEFT JOIN and JSON array->object
|
|||
---|---|---|---|
#18+
Всем привет! Прошу помощи со следующей задачей. В базе имеется таблица table1 с полем commun с json данными следующего вида [{"data": "95", "type": "sale"}, {"data": "104", "type": "customer"}, {"data": "13", "type": "contact"}] и таблица table2 Пишу запрос: $sel = mysqli_query($t, "SELECT t1.*, t2.name as name2 FROM `".DB_PREFIX."_table1` t1 LEFT JOIN `".DB_PREFIX."_table2` t2 ON CAST(t1.commun ->> '$.data' AS SIGNED) = t2.id "); while($row = mysqli_fetch_assoc($sel)){ echo $row['name2']; } Такой запрос отлично работает если в поле commun простой объект {"data": "104", "type": "customer"}, а вот с массивом объектов не получается. Такая запись так же не работает on JSON_CONTAINS(t1.commun->'$[*].data', CAST(t2.id as JSON)) Подскажите, пожалуйста, что я не дописал в запросе. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 12:25 |
|
Выборка с mysql LEFT JOIN and JSON array->object
|
|||
---|---|---|---|
#18+
LionGeek, Предлагаю вариант. Надеюсь чем-нибудь поможет. ЗЫ не тестировал Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2020, 01:50 |
|
Выборка с mysql LEFT JOIN and JSON array->object
|
|||
---|---|---|---|
#18+
Вот те на 2018 LionGeek, Предлагаю вариант. Надеюсь чем-нибудь поможет. ЗЫ не тестировал Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2020, 02:03 |
|
Выборка с mysql LEFT JOIN and JSON array->object
|
|||
---|---|---|---|
#18+
Вот те на 2018, И еще один косячок исправил Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2020, 02:37 |
|
|
start [/forum/topic.php?fid=23&msg=39993709&tid=1459613]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 271ms |
total: | 392ms |
0 / 0 |