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
-
Поиск слов состоящих ровно из 4 символов от А-Я и от а-я
Вот так пробую не выводит ничего вообще в результате: select name1 from cat where name1 REGEXP "^[А-Яа-я]{4}$"; и так не пашет: select name1 from cat where name1 REGEXP "^.{4}$"; и так не хочет: select name1 from cat where name1 REGEXP "^....$"; и так: select name1 from cat where name1 REGEXP "^\w{4}$"; Вот такая таблица, фото ниже. Нужно чтобы возвратило слова состоящие из 4 символов. Вот так работает, но я хотел бы регуляркой научиться такие фокусы select name1 from cat where name1 LIKE '____'; Как сделать такое же регуляркой?
0 votes1 answer -
Поле UNIQUE но null может повторяться
Можно ли сделать такое поля, что бы UNIQUE но null повторяться могло? ну например вот это прокатит: а это нет:
0 votes2 answers -
Помогите найти ошибку
$result = mysql_query("SELECT DISTINCT * FROM `q95w65e14` GROUP BY `type_menu`"); while ($bd = mysql_fetch_assoc($result)) { echo '<div class="left_menu_a">'.$bd[type_menu].'</div>'; $result2 = mysql_query("SELECT * FROM `q95w65e14` WHERE `type_menu`=$bd[type_menu]"); while ($bd2 = mysql_fetch_assoc($result2)) { echo '<div class="left_menu_b" id="'.$bd2[type_product].'"></div>'; } }
0 votes5 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 -
Помогите правильно составить UPDATE
Нужно обновить поля, если в текстовом значении последние два символа равны/неравны чему-либо. Не могу придумать, как это правильно реализовать.
0 votes2 answers -
Помогите придумать структуру таблиц
Нужно создать вот такой прайс на сайте: +--------+-------------+-------------+-------------+ | | Категория 1 | Категория 2 | Категория 3 | +--------+-------------+-------------+-------------+ | Цена 1 | 10 руб. | 30 руб. | 25 руб. | +--------+-------------+-------------+-------------+ | Цена 2 | 50 руб. | 100 руб. | 70 руб. | +--------+-------------+-------------+-------------+ Как бы так организовать таблицы, чтоб было потом минимум запросов к БД? Пока ничего лучше не придумал чем создать 2 таблицы (категория и цена) и делать в цикле запросы к БД, чтоб собрать в массив цены по всем категориям. У меня очень мало опыта в БД, да и решение ка…
0 votes22 answers -
Помогите разобраться с select
Здравствуйте! Почему, и вообще возможно ли, не работает такой запрос. select big_flash FROM `data_serveses_flash` WHERE uniq_id = (select uniq_id from data_serveses_names where paid = 1) and big_flash!=''; data_serveses_flash.uniq_id и data_serveses_names.uniq_id уникальные. А задача заключается в том, чтобы из data_serveses_flash выбрать все big_flash, но при условии, что в data_serveses_names, paid = 1 и data_serveses_flash.big_flash!='' Спасибо всем !
0 votes4 answers -
Помогите разобраться с запросом
Здравствуйте. Мне необходимо немного подправить БД. В поле "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 -
Помогите решить проблемму mysql_fetch_array()
У меня такая проблемма. Создал я работающую страницу, скопировал из нее часть кода в другую и в ней он пишет: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in T:\home\localhost\site\index.php on line 8 Сам код такой: $ind1 = mysql_query("select * from index"); while ($ind1_array = mysql_fetch_array($ind1)) { printf ("<table width='80%'><tr><td>\n<div class='news'>\n<h3>%s</h3>\n<p>%s</p>", $ind1_array["name"], $ind1_array["text"]); } Не подскажете что делать?
0 votes7 answers -
Помогите с запросом
Подскажите как написать запрос типа: Update если картеж с заданным id существует, иначе insert
0 votes1 answer -
Помогите с запросом
Пишу в этот форум, потому что почему-то у меня нет прав создавать топике в разделе СУБД Есть таблица users user_id | rating 1 | 80 2 | 50 3 | 30 4 | 10 И таблица update_rating user_id | dop_rating 1 | 15 2 | -30 3 | -10 4 | 60 Вопрос: как в одном запросе приплюсовать данные поля update_rating.dop_rating к полю users.rating у всех пользователей? Пока не нашел другого способа как создавать для каждого юхера свой sql-запрос, но ИМХО если пользователей будет много, то это будет жестоко..
0 votes5 answers -
Помогите с запросом
Есть три таблицы: category post post_cat Нужно сделать запрос на выборку из таблицы post так, чтобы в результате присутствовало ещё одно поле: post_cat. И в этом поле должны содержатся имя или имена категорий. Можно ли сделать такое или нет? Если да, то как?
0 votes6 answers -
Помогите с запросом
Имеется таблица table с полями id, refpost, type и comment. Тип поля comment TEXT. Необходимо получит строки, где refpost у которой type='A' или type='D', который встречается в поле comment. Пробовал так: SELECT id, refpost, type, comment FROM table WHERE comment LIKE ( SELECT refpost FROM table WHERE type='A' OR type='D' ) Без результатов. Выдает ошибку 1242: Subquery returns more than 1 row
0 votes11 answers -
Помогите с запросом
Есть таблица с 3мя полями. Одно "num" - int, не auto increment, остальные, "title" и "content" - varchar. Вывожу в textarea содержимое content, правлю и пытаюсь записать обратно. Запрос такой $sql = "INSERT INTO content(content) VALUES('".$_POST['edit']."')"; Пишет Field 'num' doesn't have a default value До этого поле num было auto increment. Пробовал выполнить запрос $sql = "INSERT INTO content(title,content) VALUES('','".$_POST['edit']."')"; Выполняется без ошибок, а результат какой был такой и остается. Собственно требуется записать только отредактированное поле content, остальные не трогать. Подскажите как записать отредактированное поле content ?!
0 votes3 answers -
Помогите с запросом
есть таблица id id2 desc 1 1 text 2 1 text1 3 1 text2 4 2 text3 5 3 text4 6 4 text5 7 4 text6 8 4 text7 9 5 text8 Мне нужно сгруппировать по id2 и вывести максимальные id получить на выходе: id id2 desc 3 1 text2 4 2 text3 5 3 text4 8 4 text7 9 5 text8 я пробовал: SELECT max(id), id2, desc FROM test GROUP BY id2 id id2 desc 4 1 text 4 2 text3 5 3 text4 8 4 text5 9 5 text8 как видно что id стал максимальным но поле desc не соответствует id, еще пробовал: SELECT id, id2, desc FROM test GROUP BY id2 ORDER BY id DESC id id2 desc 9 5 text8 6 4 text5 5 3 text4 4 2 text3 1 1 text…
0 votes1 answer -
Помогите с запросом пожалуйста
Добрый день! Есть две таблицы, одна с данными компании где id номер компании, а вторая это картинки этой компании где для одной компании (id) может быть несколько записей. Мне надо получить из первой компании все данные, а из второй мне надо на каждую компанию получить три ее картинки (желательно случайные в пределе количества картинок этой компании). Подскажите как правильно решать данную задачу, не перегружая сервер. Спасибо Вам всем!
0 votes8 answers -
помогите с ошибкой при insert в таблицу
Добрый день всем!! Подскажите в чем ошибка не могу разобраться Вот типы полей в таблице id int(11) id_forum int(11) th_name varchar(255) utf8_general_ci date_create bigint(20) user_id int(11) lock int(1) а вот непосредственно запрос , данные из формы . $id_forum = $_POST[id_forum]; $th_name = htmlspecialchars($_POST[th_name]); $create_data = time(); $user_id = $_POST[user_id]; $lock_th = $_POST[lock]; $str_unsert = "insert into tb_themes (id_forum,th_name,date_create,user_id,lock) values($id_forum,'$th_name',$create_data,$user_id,$lock_th);"; if ($res_query = mysql_query($str_unsert)) .......... а вот ошибка которую я получаю You have an e…
0 votes1 answer -
Помогите соединить 3 таблицы MySQL
Есть 3 таблицы "tb", "ts" и "tc". Как вывести все комментарии соответствующие записи в таблице "tb" с id=1, также из таблицы "tb" с id=2 и таблицы "ts" с id=1. Прилагаю рисунок своих мыслей, думаю с ним все ясно будет. Заранее спасибо! http://forum.php.su/...=71&t=8796&id=3
0 votes6 answers -
Помогите создать select один к многим
Здравствуйте! Помогите создать правильно SELECT. Есть две таблицы: tbl_company id_company int name_company varchar title_company varchar about_company text tbl_products id_company int id_product int name_product varchar url_product varchar Задача сделать запрос, который принесет все данные о компании и три товара этой компании. Не хочется делать запрос по компании, а потом бежать и делать компания х 3 селекта, слишком много запросов. Спасибо!
0 votes4 answers -
Помогите составить выборку из трех таблиц
Здравствуйте. Имеем три таблицы: фрукты, страны (в которых они растут), и таблица их соотношения (так как один фрукт может принадлежать более чем одной стране). Пример: Задача: вывести список фруктов, и рядом с каждым фруктом список его стран. Думал как сделать, ничего не придумал кроме выборки сначала фруктов и вывода их в цикле, потом второй запрос для выбора стран внутри каждого цикла по id фрукта. Но это не есть гуд, как вы понимаете. Как новичок прошу совета (прикидывал и с временными таблицами, и с вложенными select, и с join'ами, но ничего не получилось). Спасибо.
0 votes7 answers -
помогите составить запрос
Здравствуйте, смотрите, у меня есть две таблицы, users и ugen, мне надо выбрать все записи из users, где в users username = 'vvsh' и при этом где в ugen, id = (id из users) и в ней gid = "1". заранее спасибо
0 votes8 answers -
Помогите составить запрос - нужно сравнивать соседние записи
MySQL Есть таблица, поле первичный ключ типа datetime, остальные поля не важны. В таблице ок. 5 млн записей. Обычно записи следуют одна за другой с интервалом 1 минута, как-то так: Spoiler SELECT * FROM (имя таблицы) WHERE `TIME` BETWEEN '2017-07-21 08:58' AND '2017-07-21 10:57' ORDER BY `TIME` ASC; результат: Array ( Array ( [TIME] => 2017-07-21 08:58:00 [SHORT] => 0.00000000641 [LONG] => 0.0000000665 [SOURCE] => 15 ) Array ( [TIME] => 2017-07-21 08:59:00 [SHORT] => 0.00000000583 [LONG] => 0.0000000664 [SOURCE] => 15 ) Array ( [TIME] => 2017-07-21 09:00:00 [SHORT] =&…
0 votes15 answers -
Помогите составить запрос выборки из mysql
Условно представим, что существует таблица `comments`, в которой данные: ID | Author | ForLogin | Comment 1 | Пушкин | MotoMoto | Привет 2 | Басков | MotoMoto | Класс 3 | Пушкин | Baskov | Салют 4 | Шурик | MotoMoto | Йов! 5 | Пушкин | MotoMoto | Что делаешь? 6 | Пушкин | MotoMoto | Не молчи Необходимо например на странице юзеров, допустим пусть это будет юзер из базы "MotoMoto" вывести количество комментариев, которые адресованы ему + чтобы подсчет велся так чтобы 1 юзер = 1 комментарий, например "Пушкин" написал "MotoMoto" 3 комментария, но в общем подсчете комментариев они должны считаться все как за 1. То есть по вышеуказанной таблице получается что у юзера "MotoMo…
0 votes2 answers -
Помощь с созданием триггера
Доброго времени суток всем! Язык SQL знаю поверхностно, а создавать триггеры - вовсе не умею. Прошу вашей помощи по созданию. Имеется база данных products, в ней три таблицы - assembledcomponents (собранные компоненты), motherboards, processors, rams. В каждой таблице содержится первичный ключ, цена + тройка других ненужных столбцов. Первая таблица заполняется из остальных трёх (вручную). Теперь суть триггера: Необходимо при каждой сборке полу-компьютера в таблице assembledcomponents суммировать цену (в поле Price) выбранных компонентов, взятых из других таблиц, в одно поле. Постскриптум: Суть отразил, вроде, верно. Если возникнут вопросы - напишите.
0 votes13 answers -
Последние 10-ть записей.
Доброго всем времени! Скажите плиз, как мне вывесть последние 10-ть записей из таблицы, при этом не переворачивать их наоборот? пример, как не надо SELECT cm_message from chat_messages order by cm_id desc limit 10 надо из этой последовательности 10-ь последних записи SELECT cm_message from chat_messages order by cm_id Заранее благодарствую.
0 votes9 answers