Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/22: Рейтинг темы: голосов - 22, средняя оценка - 4.68
31 / 45 / 21
Регистрация: 09.10.2012
Сообщений: 818
1

Выборка по алфавиту

27.06.2013, 13:17. Показов 4170. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребят возник вопрос как сделать выборку из базы данных по алфавиту,мне нужно чтобы при нажатии на ссылку с буквой "А" Б" и так далее выводились из базы фамилии на соответствующую букву,какой запрос или функция для этого нужен?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.06.2013, 13:17
Ответы с готовыми решениями:

Выборка из таблицы и сортировка по алфавиту
Помогите, пожайлуста! Имеется таблица в ней 140 строк с id=1 до id=140, а в каждой из строк есть...

Выборка из базы и сортировка по алфавиту
Мне нужно сделать выборку из базы данных MySQL с сортировкой по алфавиту причем если в начале стоит...

В описании дана программа, заменяющая каждую букву следующей буквой по алфавиту. Исправьте ее, чтобы каждая буква заменялась предыдущей по алфавиту
const A = ; Z = ; var s:string; i:integer; begin writeln('Vvedite stroku'); ...

Выборка без ключевых слов/Выборка без столбцов/Выборка с условием
Нужно сделать 2 типа выборки в отдельный столбец: #1 без ключевых слов типа "АРБУЗ, ДЫНЯ" #2 без...

10
814 / 797 / 201
Регистрация: 21.09.2012
Сообщений: 2,656
27.06.2013, 13:46 2
MySQL
1
SELECT * FROM `table_name` WHERE LEFT(`name`, 1) = 'А'
1
31 / 45 / 21
Регистрация: 09.10.2012
Сообщений: 818
27.06.2013, 13:47  [ТС] 3
Цитата Сообщение от Dolphin Посмотреть сообщение
MySQL
1
SELECT * FROM `table_name` WHERE LEFT(`name`, 1) = 'А'
С таким запросом под каждую букву придется писать новый запрос,а как сделать его динамическим?
0
814 / 797 / 201
Регистрация: 21.09.2012
Сообщений: 2,656
27.06.2013, 13:50 4
Ну так подставляй из гет параметра. Перед этим обработав его только.
1
31 / 45 / 21
Регистрация: 09.10.2012
Сообщений: 818
27.06.2013, 14:29  [ТС] 5
Цитата Сообщение от Dolphin Посмотреть сообщение
Ну так подставляй из гет параметра. Перед этим обработав его только.
Про обработку гет параметра можно поподробнее? Я новичок в этом
0
814 / 797 / 201
Регистрация: 21.09.2012
Сообщений: 2,656
27.06.2013, 14:37 6
HTML5
1
2
3
<a href="?letter=А">А</a>
<a href="?letter=Б">Б</a>
<a href="?letter=В">В</a>
PHP
1
2
3
4
5
6
7
if(!empty($_GET['letter'])){
    $letter = substr($_GET['letter'], 0, 1);
    if(preg_match('/^[а-яa-z]$/i', $letter)){
          $sql = "SELECT * FROM `table_name` WHERE LEFT(`name`, 1) = '$letter'";
          // ну и так далее
    }
}
1
31 / 45 / 21
Регистрация: 09.10.2012
Сообщений: 818
27.06.2013, 14:58  [ТС] 7
Цитата Сообщение от Dolphin Посмотреть сообщение
HTML5
1
2
3
<a href="?letter=А">А</a>
<a href="?letter=Б">Б</a>
<a href="?letter=В">В</a>
PHP
1
2
3
4
5
6
7
if(!empty($_GET['letter'])){
    $letter = substr($_GET['letter'], 0, 1);
    if(preg_match('/^[а-яa-z]$/i', $letter)){
          $sql = "SELECT * FROM `table_name` WHERE LEFT(`name`, 1) = '$letter'";
          // ну и так далее
    }
}
Что тут не так?
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\phonebook.ru\www\phonebook.php on line 16

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
include ("connect.php");
$alphabet=str_split('АБВГДЕЁЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ',2);
foreach($alphabet as $letter){
 echo "<a href='?letter=$letter'>$letter</a>";
 }
#$query = "SELECT*FROM `factory` WHERE id_fact LIMIT 20";
#$sql = mysql_query($query) or die(mysql_error());
#while ($row = mysql_fetch_array($sql)){
#echo "<table><tr><td>'.$row[factory].'</td></tr></table>";
#}
if(!empty($_GET['letter'])){
    $letter = substr($_GET['letter'], 0, 1);
    if(preg_match('/^[а-яa-z]$/i', $letter)){
          $sql = "SELECT*FROM `positions` WHERE LEFT(`pos`, 1) = '$letter'";
  $row = mysql_fetch_array($sql);
    }
}
 
echo "<table><tr><td>'.$row[pos].'</td><td>.'$row[id].'</td></tr></table>";
?>
0
814 / 797 / 201
Регистрация: 21.09.2012
Сообщений: 2,656
27.06.2013, 15:00 8
В запросе SELECT*FROM у вас слеплено все вместе
1
31 / 45 / 21
Регистрация: 09.10.2012
Сообщений: 818
27.06.2013, 15:03  [ТС] 9
Цитата Сообщение от Dolphin Посмотреть сообщение
В запросе SELECT*FROM у вас слеплено все вместе
Ошибка не ушла
0
814 / 797 / 201
Регистрация: 21.09.2012
Сообщений: 2,656
27.06.2013, 15:11 10
А кто же за вас будет запрос то сам посылать?
PHP
1
2
3
4
5
6
$sql = "SELECT*FROM `positions` WHERE LEFT(`pos`, 1) = '$letter'";
$res = mysql_query($sql);
while($row = mysql_fetch_assoc($res))
{
    //что то делаем с данными
}
1
31 / 45 / 21
Регистрация: 09.10.2012
Сообщений: 818
27.06.2013, 15:19  [ТС] 11
Цитата Сообщение от Dolphin Посмотреть сообщение
А кто же за вас будет запрос то сам посылать?
PHP
1
2
3
4
5
6
$sql = "SELECT*FROM `positions` WHERE LEFT(`pos`, 1) = '$letter'";
$res = mysql_query($sql);
while($row = mysql_fetch_assoc($res))
{
    //что то делаем с данными
}
Видимо рано я заскочил вперед,но такое задание дали,уж извините за беспокойство,но он не выводит никаких данных на экран из цикла! И при нажатии на ссылки тоже ничего не происходит...
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
include ("connect.php");
$alphabet=str_split('АБВГДЕЁЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ',2);
foreach($alphabet as $letter){
 echo "<a href='?letter=$letter'>$letter</a>";
 }
if(!empty($_GET['letter'])){
    $letter = substr($_GET['letter'], 0, 1);
    if(preg_match('/^[а-яa-z]$/i', $letter)){
          $sql = "SELECT * FROM `phonenote` WHERE LEFT(`fname`, 1) = '$letter'";
  $query = mysql_query($sql);
  while ($row = mysql_fetch_assoc($query))
  {
  echo "<table><tr><td>'.$row[fname].'</td><td>.'$row[id].'</td></tr></table>";
 
  }
    }
}
?>
0
27.06.2013, 15:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.06.2013, 15:19
Помогаю со студенческими работами здесь

Выборка уникальных записей с максимальными датами, и затем выборка по найденому
Как вообще такой запрос лучше составить? У меня есть таблица User(id) и Message( id,...

Выборка задолженностей по таблице (выборка строк с пустыми ячейкам даты оплаты) для отчета
Имеется таблица учета продаж, в ней нужно сделать выборку по дате оплаты для ежемесячного отчета....

Выборка из Combobox, причем выборка должна быть частичной
Добрый день. Подскажите пожалуйста как реализовать такого рода задачу: Есть 4 Combobox, в...

Выборка из таблици товаров по самому максимальному рейтингу магазина, рейтинг мазаницов если есть одиноковые, выборка уже по минимальной цене
Всем привет, нужна помошь. Имеется следующая таблица товаров Таблица: products её колонки...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru