Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 12.10.2020
Сообщений: 21

Написать скрипт, который бы выводил "дерево" с отступами, чтобы было видно где родительский, а где дочерний элемент

11.04.2021, 16:15. Показов 770. Ответов 0

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите пожалуйста с решением задачки:
#1 PHP

Написать скрипт, который бы выводил "дерево" с отступами, чтобы было видно где родительский, а где дочерний элемент.
Ветви дерева хранятся в БД (mysql). Таблица обычно содержит 3 поля: id, name и parent_id. Учесть возможность построение такого дерева неограниченной вложенности.

Примеры таких деревьев:
- структура каталогов на жестком диске;
- список категорий товаров.

#2 SQL

Есть две таблицы:
MySQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CREATE TABLE `books` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`author_id` INT(11) NOT NULL,
`title` VARCHAR(255) NOT NULL,
`price` FLOAT NOT NULL,
PRIMARY KEY (`id`),
INDEX `fk_author_id` (`author_id`),
CONSTRAINT `fk_author_id` FOREIGN KEY (`author_id`) REFERENCES `authors` (`id`) ON UPDATE CASCADE ON DELETE CASCADE
)
 
CREATE TABLE `authors` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(50) NOT NULL,
PRIMARY KEY (`id`)
)
Требуется написать 3 SQL запроса (чистых, а не проверками в коде):

1. Вывести все книги и их авторов.
2. Найти авторов, у которых нет ни одной книги.
3. Найти авторов, у которых больше одной книги.

Заранее спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.04.2021, 16:15
Ответы с готовыми решениями:

Скрипт выводит дважды одно и то же. Где исправить, чтобы один раз выводил?
$(".js-section").length) { $(".js-section").each(function(e) { var t = "js-section" + e; this.id = t; var o = "#" + t, ...

Нужно написать запрос, чтобы он выводил только те Email, где 5 символов до '@'
Пробовал через SUBSTRING(), правда незнаю как его сопоставить с 'LIKE'. Вот примерно что получилось: SELECT SUBSTRING(email, 1, 5)...

Как изменить программу так, чтобы было два потока:соотвественно один родительский, другой дочерний
Как изменить программу так, чтобы было два потока:соотвественно один родительский, другой дочерний, а то у меня получется, что две функции...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.04.2021, 16:15
Помогаю со студенческими работами здесь

Не подскажите, где ошибка. Надо чтобы когда вводишь текст выводил кашу, но когда stop! выводил ок
a = while True: text = input() if text in a: print("Каша!") elif text == "Stop!": print("Ок") ...

Не подскажите, где ошибка. Надо чтобы когда вводишь текст выводил кашу, но когда stop! выводил ок. Уменявыводиттолько ок
a = while True: text = input() if text in a: print("Каша!") elif text == "Stop!": print("Ок") ...

Как сделать, чтобы вместе с формой отправки ajax. В письме было видно параметры товара в блоке «ваш выбор», который зака
Здравствуйте, как сделать, чтобы видно было что он выбрал на сайте в письме который заказал человек. Пример письма с почты: Телефон: Имя:...

Как сделать прозрачность, чтобы сквозь PictureBox было видно видно другие объекты?
Я делаю несколько PictureBox с Gif-анимацией (Робот и снаряд). На заднем цвете стоит transperent, но пролетая над роботом снаряд оставляет...

Написать текст модуля содержащий родительский и дочерний классы
Написать текст модуля Unit1.pas, содержащий родительский и дочерний классы. В родительском классе определить множества М1 ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru