Questione : Domanda del MsAccess del convertito a MySQL

Non potrei convincere questa domanda di ricerca per funzionare in MySQL.

I ho MsAccess collegato alle tabelle con ODBC e potevo rendergli il lavoro in MsAccess conservando la prima domanda e comprendendo quella domanda in secondo. Ma ora (con il vostro aiuto) devo convincere MySQL per fare it.

I che cerca parecchi campi in una tabella dei prodotti ma anche per volere comprendere i campi supplementari del prodotto nella ricerca che hanno una struttura sfavorevole below.

s01_CFM_ProdValues:  ha i molti ad un rapporto a s01_Products e il contains
field_id, il product_id, il valore, il value_long
1 269 1111111111 dolor di ipsum del
6 269 Lorem del
4 269 22222222222 si siede il amet, il elit adipisicing del consectetur, sed fa il

s01_Products del eiusmod tempor.
9 269: ciò una lima piana con i campi: il
id (chiave), codice, nome,
269, 25ps, 25 del descrip collega indietro & corpo, “descrizione: Bla di bla di bla di bla di queste pietre. “le tabelle del

The sono collegate come this
.producs01_Products.id/>t_id
Each ha un numero (field_id) io devono cercare determinati dati reali di fields.
The è deposito il uno o il altro dentro stimano e stimano lungamente; both.

Here non è mai la prima domanda del MsAccess conservata come cf_product. Restituisce le annotazioni multiple, il product_id dei campi ed i campi di valori COME combined

SELECT s01_CFM_ProdValues.product_id, [valore] & [value_long] COME combined
FROM s01_CFM_ProdValues
WHERE (((s01_CFM_ProdValues.fieldd_id) =4 o (s01_CFM_ProdValues.field_id) =6)); il

Here è seconda il asProductList_Search

SELECT s01_Products.* del MsAccess domanda, cf_product.com bined il
LEFT del
FROM s01_Products UNISCE il cf_product SU risultati del

The di cf_product.product_id
WHERE (
(s01_Products.active=1) E (
(s01_Products.code come “*Lorem*") O
(s01_Products.name come “*Lorem*") OR
(s01_Products.descrip come “*Lorem*") OR
(cf_product.combined come “il
del *Lorem*")) E (
(s01_Products.code come “*stones*") OR
(s01_Products.name come “*stones*") OR
(s01_Products.descrip come “il
di OR
(cf_product.combined del *stones*") come “*stones*")
)) trova sia “Lorem„ CHE “le pietre„ nei campi searched.
class= del

Risposta : Domanda del MsAccess del convertito a MySQL

senza una vista…

Lo suggerisco domande di uso mólto per aumentare il readibility & la prestazione…
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
SELEZIONARE cf_prod.*, prod.*, prod.disp_order COME sort_order
Dal pungolo di s01_Products lasciato unir
  (
  SELEZIONARE cfmp.product_id, CONCAT (cfmp.value, cfmp.value_long) COME unito 
  Dal cfmp di s01_CFM_ProdValues 
  DOVE (cfmp.field_id = 4) O (cfmp.field_id =6)
  ) COME cf_prod su cf_prod.id=prod.id
DOVE (prod.active=1) E (prod.id = cf_prod.product_id) E
  (
    (CONCAT (prod.code, prod.name, prod.descrip, cf_prod.combined) COME “%BACK%") 
    E 
    (CONCAT (prod.code, prod.name, prod.descrip, cf_prod.combined) COME “%STONES%")
  )
ORDINE da sort_order
Altre soluzioni  
 
programming4us programming4us