2015-03-23 3 views
0

Здравствуйте, у меня есть раскрывающийся список, который я отображу все данные, которые у меня есть в моей базе данных в конкретной таблице. Теперь я хочу отобразить сначала данные из другой таблицы моей базы данных, чтобы быть более конкретным. Я хочу сначала отобразить в раскрывающемся списке специальность столбца от врача таблицы. Как я могу это сделать?Отобразить сохраненные данные в моем выпадающем списке

Ниже код, чтобы отобразить данные из другой таблицы в моей базе данных:

<label id="Specialty">Specialty:</label> 
    <select id="SelectSpecialty" name="specialty"> 
    <?php 
    $sql = mysql_query("SELECT name FROM specialties"); 
    while ($row = mysql_fetch_array($sql)){ 
    echo "<option value='".$row['name']."'>".$row['name']."</option>"; 
    } 
?> 

PS: Я хочу, чтобы отобразить оба ДАННЫЕ из двух таблиц в списке

+0

Какая у вас схема db? – Paul

ответ

0

Это кажется например, вы хотите объединить обе таблицы.

select * 
from (
    select name, 1 as seq from specialties 
    union 
    select name, 2 as seq from specialties2 
) a order by a.seq; 

Обратите внимание, что если вы уже знаете, обе таблицы не будут иметь одинаковые значения, было бы лучше использовать UNION ALL, поскольку это более производительным, так как он не проверяет наличие дубликатов.

Обратите внимание на hardcoded seq, чтобы убедиться, что набор результатов из первой таблицы находится в верхней части.

+0

Если я делаю это так ... $ sql = mysql_query ("SELECT name FROM specialties UNION ALL SELECT specialty FROM doctor WHERE username = '$ username'"); ... тогда он показывает мне данные, которые я хочу, но он отображает данные, которые я хочу сначала, последние – DogFace

+0

@niklakis Используйте запрос, который я разместил с seq и заказом. –

+0

@niklakis любая обратная связь по этому вопросу? –

Смежные вопросы