Database
Solving problems and issues related to various DBMS
Explore Questions
There are no popular questions to show right now
-
0 votes2 answers
-
0 votes0 answers
-
0 votes1 answer
-
0 votes1 answer
-
0 votes1 answer
319 questions in this forum
-
Уникальное значение
Здравстуйте! Подскаите, как из базы достать уникальеное значение? Такая суть: Есть страны и в них офисы (адреса) Выаскиваю список адесов ориентируясь на страну и у меня выводится по 2 раза один и тот же город., где в одной сране 2 филиала. $query_rsContacts = "SELECT * FROM Adress a, Contacts c WHERE a.Region = c.Region AND a.Lang = '".$segment_1."' AND c.Publish = '1'";
0 votes4 answers -
MySQL сортировка
Здравствуйте Не могу отладить запрос: ASC работает, а DESC нет SELECT * FROM `auto`, `account`, `order`, order_detail WHERE order_detail.order_id = order.order_id GROUP BY order.order_id ORDER BY order_detail.adress_end DESC You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 Этот работает SELECT * FROM `auto`, `account`, `order`, order_detail WHERE order_detail.order_id = order.order_id GROUP BY order.order_id ORDER BY order_detail.adress_end ASC И еще пару сортировок аналогично глючат.........
0 votes2 answers -
MySQL максимальное из нескольких полей (ответ уже нашел)
Такая, казалось бы простая задача ставит в тупик. Есть таблица, в ней есть в т.ч. 8 интересующих полей. Нужно написать select который из каждой строчки выбирает максимальное значение из этих восьми полей. Было бы два поля, использовал бы case но выбрать из восьми - это же огромное количество вложенных кейсов получается
0 votes1 answer -
Помогите разобраться с запросом
Здравствуйте. Мне необходимо немного подправить БД. В поле "xfields" значение "2018" изменить на "2019". Вот мой код. $xfrow = $db->super_query( "SELECT xfields FROM " . PREFIX . "_post WHERE id = '$id'" ); if ($xfrow != NULL) { $xfrowclr = str_replace("2018","2019",$xfrow); $db->query( "UPDATE " . PREFIX . "_post SET xfields='$xfrowclr' WHERE id='$id'" ); } Если смотреть промежуточные варианты то он работает до момента записи исправленной информации в БД. Скажите пожалуйста, что не так я делаю.
0 votes0 answers -
связь товаров с заказми
Подскажите как правильнее делать при создании интенет магазина. Жесткая связь товаров с заказами, соответственно невозможность удалить товар из базы, если он заказан, что в свою очередь будет забивать базу старыми товарами, которых уже нет в наличии. Или товар "жестко" записывать в заказ и не делать связи с таблицей товаров? Какова обычная практика?
0 votes7 answers -
Составить запрос на заполнение строк языка
Имею таблицу saite1 Добавить name_loc0, то есть заполнить. Дамп через phpmyadmin -- phpMyAdmin SQL Dump -- version 3.5.4 -- http://www.phpmyadmin.net -- -- Хост: localhost -- Время создания: Янв 10 2013 г., 03:10 -- Версия сервера: 5.5.27-28.1 -- Версия PHP: 5.3.3-7+squeeze14 SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; -- -- База данных: `saite1` -- -- ——————————————————-- -- -- Структура таблицы `saite1` -- CREATE TABLE IF…
0 votes2 answers -
Подсчитать количество тегов
Изначально пошел по неверному пути при создании базы данных, но теперь исправлять поздно. Так вот, необходимо сформировать облако тегов, однако перед этим нужно узнать количество повторений каждого тега. В БД они хранятся в виде слова в строке через пробелы. При обычном выводе я использую функцию explode. Как мне подсчитать количество повторений каждого тега через MYSQL, заведомо указав, что нужно разбить строку на слова и искать по ним? К примеру, данные у меня хранятся так: id | element | tags 234 | Name of element | tag1 tag2 tag3 Нужное поле `tags` может быть вида как 'tag1 tag2 tag3', так и просто 'tag1'. Необходимо подсчитать сколько раз во всей таблице встречается …
0 votes3 answers -
помогите переделать поле
какое должно быть +————+———————+——+—--+——————-+——-+ | Field | Type | Null | Key | Default | Extra | +————+———————+——+—--+——————-+——-+ | fbID | bigint(20) unsigned | NO | PRI | | | какое сейчас +———--+————-+——+—--+———+——-+ | Field | Type | Null | Key | Default | Extra | +———--+————-+——+—--+———+——-+ | fbID | varchar(30) | YES | | NULL | | я боюсь эксперементировать , так как там 63 тысячи записей , напишите как прaвильно
0 votes7 answers -
ругается на =ALL
пытаюсь выполнить SELECT * FROM orders WHERE good_id=ALL получаю #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 Разве ALL не является допустимым оператором?
0 votes4 answers -
Denwer
Здравствуйте. У меня проблемы с денвером ! Создаю новую базу а в ответ база уже была создана, создаю другую базу с другим именем тоже самое. Удалил денвер, скачал новый и пытаюсь создать базу в ответ БАЗА УЖЕ БЫЛА СОзДАНА. Может кто знает в чем проблема... Вижу только один выход удалить созданные базы но не знаю как, помогите кто что знает или сталкивался с такой проблемой. Буду раз любой информации, спасибо!
0 votes5 answers -
Выборка с суммой
Пример таблицы product_id——--quantity (количество, шт, единица) 42———-——--2 42————-—--1 34————-—--4 15————-—--2 42————-—--9 34————-—--5 Как сделать одним запросом (или вложенным) чтобы выводились все продукты с полем product_id и суммой Результат должен быть такой product_id—SUM(quantity) 42————-—--12 34————-——9 15————-——2
0 votes6 answers -
Посоветуйте последовательные уроки PDO
Как сказал Veseloff : "расширение mysql безнадёжно устарело". Сначала я не обратил на это внимание, но зайдя в мануал понял, что оно реально устарело. Тут я решил изучить PDO в мануале, но там функции расположены не последовательно и разобраться новичку тяжело. И поэтому мне нужны уроки, где о функция все будет рассказано последовательно.
0 votes18 answers -
запрос на удаление полей по дате
Здравствуйте! Суть такая, надо удалить запись в базе mysql по условию дата меньше или равно текущая дата - 10 дней.(к примеру) в принципе получается средствами php выборкой сравнением и удалением, но это неправильно слишком много запросов может получиться. мануал по sql прочитал, нашел кучу примеров, но видимо что то не так делаю. не получается выражение в запрос вставить. структура таблицы: TABLE `abc` ( `id` INT NOT NULL AUTO_INCREMENT , `pointer` TEXT NOT NULL , `coment` TEXT NOT NULL , `isdate` DATE NOT NULL , PRIMARY KEY ( `id` ) ps: тема скорее всего к базам БД относится, но там не смог создать новую тему. (почемуто)
0 votes2 answers -
Проблема с INSERT
Господа, пожалуйста скажите почему не работает элементарная хрень: insert into Pupils(ClassID) values(2) где: ClassID : ссылка на ID таблицы классов, тип (естессно...) LongInt BDE ругается...говорит что мол "Key Violation"
0 votes4 answers -
phpmyadmin
Помогите пожалуйста запустить PhpMyAdmin. БД на localhost на Ubuntu, для домашних разработок. Стандартно и без замарочек: login "root", password "". Через терминал захожу: "mysql -u root" пускает. Поставил PhpMyAdmin. При вводе login и password пишет: "В доступе отказано". p.s. Еще помню на денвере прежде нужно было setup чё-то там потом папку удалить... этого ниченго я не делал в данном случае.
0 votes1 answer -
Соединение с несколькими БД
Есть CMS которая подключается к базе данных. Хотелось бы подключить вторую БД к ней. Как это сделать без изменений кода подключения к первой БД и без изменений кода запросов к первой БД?
0 votes2 answers -
Как использовать if в mysqli_fetch_array($result) ?
Мне нужно вывести результат колонки и проверить если в этой колонки слово которое указал пользователь. Вот код <?php mysql_connect("mysql.hostinger.ru", "u556399916_2", 123456); mysql_select_db("u556399916_2"); $result = mysql_query("SELECT family FROM mybd"); while ($row = mysql_fetch_array($result)) { echo $row[family]; echo $row[1];} mysql_free_result($result); ?> Нужно что-то типа if($row=="Имя")echo "Это имя уже занято"; Все кажется работает! <?php mysql_connect("mysql.hostinger.ru", "u556399916_2", 123456); mysql_select_db("u556399916_2"); $result = mysql_query("SELECT family FROM mybd"); while ($row = mysql…
0 votes5 answers -
Дерево категорий
Коллеги, подскажите пожалуйста по такому вопросу: Парсю каталог, который имеет следующую структуру - категории Первого уровня имею id А00001, второго Б00001, В00023 и т.д. Длина id всегда фиксированная. Сейчас сохраняю в базу как есть. Соответственно в бд храню id, parent_id. Есть ли смысл сокращать id до A1, B23? Или можно ли как то оптимально сохранять структуру дерева в бд, зная что А это всегда первый уровень, Б - второй и т.д.?
0 votes1 answer -
запрос и вывод MySQL
Подскажите пожалуйста, как задать запрос к бд, чтобы вывести на стр число, которое будет равным количеству статей в базе пример: СТАТЬИ (25)
0 votes8 answers -
Траблы с phpmyadmin
Использую XAMPP, ввожу http://localhost/phpmyadmin выдает ошибку 1045, ссылаясь на неправильный логин или пароль. Однако в файле confing.inc.php пароль не установлен = '', а логин root. Пробовал $cfg['Servers'][$i]['auth_type'] = 'config'; Заменить на $cfg['Servers'][$i]['auth_type'] = 'http'; Однако в последнем случае требует пароль, который даже после ввода в inc.php показывает как неверный....
0 votes4 answers -
Сложный запрос к mySQL, обработка и вывод данных
Добрый день! Подскажите пожалуйста, что можно сделать. Есть 3 таблицы mySQL: 1. Таблица rooms id | room | places 1 | 101 | 6 2 | 103 | 2 3 | 105 | 6 4 | 108 | 8 2. Таблица reserved_places id | room | id_trip 1 | 101 | 1 2 | 101 | 1 3 | 101 | 1 4 | 105 | 1 5 | 105 | 1 6 | 105 | 2 3. Таблица trip id | title | rooms | hotel 1 | Open tour | 101,105,103 | Planeta 2 | - | - | - Задача заключается в следующем, нужно вывести все значения чтобы получилось так Номер 101: всего мест в номере - 6; осталось - 3Номер 103: всего мест в номере …
0 votes4 answers -
Определить общее число одинаковых сообщений в базе данных
Есть такой запрос: <?php // Переменная хранит число сообщений выводимых на станице $num = 3; // Извлекаем из URL текущую страницу $page = $_GET['page']; // Определяем общее число сообщений в базе данных $result44 = mysql_query("SELECT COUNT(id_page) FROM comments"); $posts = mysql_result($result44, 0); // Находим общее число страниц $total = intval(($posts - 1) / 3) + 0; // Определяем начало сообщений для текущей страницы $page = intval($page); // Если значение $page меньше единицы или отрицательно // переходим на первую страницу // А если слишком большое, то переходим на последнюю if(empty($page) or $page < 0) $page = 1; if($page…
0 votes2 answers -
СУБД или Файлы
Есть ли смысл затеваться с хранением блогов/ностей/страниц в файлах, какие недостатки и преимущества. Есть ли смысл разгружать базу перемещая эти данные в файлы?
0 votes6 answers -
Сделать выборку с поля datetime
Добрый день. Работаю с access. Есть таблица с полем "Дата" формата datetime, нужно вывести все записи с указаного диапазону дат. Перепробовал уже кучу вариантов. Например SELECT * FROM Майстер WHERE Дата between'20112001' AND '20120503'; Пробовал добавлять 00:00:00. Делал так SELECT * FROM Майстер WHERE Дата >='20112001' AND Дата<'20120503'; Ничего не работает. Только когда сменил datatime на текст все получилось, но это не вариант. Может нужно сначала перевести Дату в текст а потом сравнивать.? Помогите с кодом. Спасибо Cкачать бд http://rghost.ru/45562502 Таблица " Майстер " поле "Дата"
0 votes5 answers -
MySql - кодировка
В какой кодировке указывать надо, чтоб достало данные из майкл в русском виде а не знаками вопроса? Что здесь поменять нужно?
0 votes2 answers