Какой должен быть Запрос, чтобы получить результат, кортежей, в которых значение столбца будет 'x'?


у меня есть следующее query:

$select = "SELECT concat(mid(cpf,1,3),'.',mid(cpf,4,3),'.',mid(cpf,7,3),'-',mid(cpf,10,2)) as cpf, nome, genero, nome_cracha, rg, crm, crm_uf, rua, bairro, cep, cidade,
    estado, telefone, celular, fax, email, cna, ano_titulo_especialista, categoria_inscricao,
    forma_pagamento, dataconfirmacao, data from inscricao order by nome ASC";

И я хочу, что переменную $x узнайте значение "categoria_inscricao"(query покажет). Хочу, чтобы это сделать следующим образом:

if($x == "valor de categoria_inscricao" ){
   ... 
}

Редактировать

Я использую код, чтобы преобразовать значения из таблицы в Excel. Но я бы вместо того, чтобы отображаться значение столбца, я мог показывает, что если значение столбца равно "x", которое будет отображаться в Excel-это "y".

Следует код:

<?php
if (!isset($_SESSION)) session_start();
if (!isset($_SESSION['usuario'])) {
    session_destroy();
    header("Location: index.php"); exit;
}
    include("conexao.php");

    $select = "SELECT concat(mid(cpf,1,3),'.',mid(cpf,4,3),'.',mid(cpf,7,3),'-',mid(cpf,10,2)) as cpf, nome, genero, nome_cracha, rg, crm, crm_uf, rua, bairro, cep, cidade,
    estado, telefone, celular, fax, email, cna, ano_titulo_especialista, categoria_inscricao,
    forma_pagamento, dataconfirmacao, data from inscricao order by nome ASC";



    $export = mysql_query($select) or die ("Sql error : ".mysql_error());

    $fields = mysql_num_fields($export);

    $header = "";
    $data = ""; 
    for ( $i = 0; $i<$fields; $i++ )
    {
    $header .= mysql_field_name($export, $i)."\t";
    }

    while( $row = mysql_fetch_row( $export ) )
    {
    $line = '';
    foreach( $row as $value )
    {
    if ((!isset($value)) || ($value == ""))
    {
    $value = "\t";
    }
    else
    {
    $value = str_replace( '"' , '""' , $value );
    $value = '"'.$value.'"'."\t";
    }
    $line .= $value;
    }
    $data .= trim( $line ) . "\n";
    }
    $data = str_replace( "\r" , "" , $data );

    if ( $data == "" )
    {
    $data = "\n(0) Records Found!\n";
    }

    $novonome = date('Ymd');

    header("Content-type: application/vnd.ms-excel");
    header("Content-Disposition: attachment; filename=".$novonome.".xls");
    header("Pragma: no-cache");
    header("Expires: 0");
    print "$header\n$data";

    ?>
Author: Maniero, 2014-01-31

2 answers

Имеет этот пример ниже.
Обратите внимание, что в printf для сравнения он использует $row["id"], то есть как индекс массива, он использует имя поля, которое вы вернетесь. В вашем случае

if($row['valor de categoria_inscricao'] == $x)

Запишите это ...кроме серьезных тем.

Mysql_fetch_array()

<?php
mysql_connect("localhost", "mysql_user", "mysql_password") or
    die("Não foi possível conectar: " . mysql_error());
mysql_select_db("mydb");

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    printf("ID: %s  Name: %s", $row["id"], $row["name"]);
}

mysql_free_result($result);
?>
 4
Author: Israel Zebulon, 2014-02-04 14:05:15

Вы можете ограничить значение исследования в запросе, чтобы сделать это. Например,

SELECT nome
FROM inscricao
WHERE categoria_inscricao = <valor desejado>
ORDERBY nome ASC

Этот запрос будет возвращать только имена строк, в которых значение categoria_inscricao были заранее определены.

Дополнительные сведения о claúsula WHERE, нажмите здесь, .

 1
Author: Felipe Avelar, 2014-01-31 15:57:13