Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
sõnum |
|
tarmo66
HV vaatleja
liitunud: 13.10.2008
|
05.05.2021 13:48:29
Woocommerce SQL päring |
|
|
Äkki mõni SQL'i guru näitab õiges suunas?
Ühe välja (eesnime) valimiseks on päring
$wpdb->get_var( "SELECT meta_value FROM $wpdb->usermeta WHERE user_id = "4" AND meta_key = 'billing_first_name'" ); |
Milline oleks päring mitme välja korraga valimiseks? Tulemus võiks siis olla assotsiatiivne massiiv (associative array).
|
|
Kommentaarid: 14 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
14 |
|
tagasi üles |
|
|
matis
HV kasutaja
liitunud: 12.04.2004
|
05.05.2021 21:28:19
|
|
|
SELECT bfn.meta_value AS billing_first_name,
bln.meta_value AS billing_last_name,
bco.meta_value AS billing_company
FROM wp_usermeta bfn
LEFT JOIN wp_usermeta bln
ON bln.user_id = bfn.user_id
AND bln.meta_key = 'billing_last_name'
LEFT JOIN wp_usermeta bco
ON bco.user_id = bfn.user_id
AND bln.meta_key = 'billing_company'
WHERE bfn.user_id = '4'
AND bfn.meta_key = 'billing_first_name'
|
_________________ https://www.e-abi.ee/ - Pangalingid, Smartposti, Post24 moodulid, Järelmaksumoodulid. Magento, Prestahop, Wordpress. Aktsepteerin Bitcoini!
Soovid lisada oma tooteid HinnaVaatlusesse? https://www.e-abi.ee/magento/kasulikud/product-exporter-and-multi-product-feed-generator-hinnavaatlus.html |
|
Kommentaarid: 63 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
1 :: |
59 |
|
tagasi üles |
|
|
tarmo66
HV vaatleja
liitunud: 13.10.2008
|
06.05.2021 14:35:49
|
|
|
Vabandan ebatäpse ülesande püstituse eest, aga neid välju on seal rohkem (20). Ükshaaval LEFT JOIN'imine ei anna olulist võitu iga välja kohta eraldi päringu tegemise ees.
|
|
Kommentaarid: 14 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
14 |
|
tagasi üles |
|
|
napoleon
Unknown virus
liitunud: 08.12.2008
|
|
Kommentaarid: 76 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
59 |
|
tagasi üles |
|
|
matis
HV kasutaja
liitunud: 12.04.2004
|
06.05.2021 20:02:12
|
|
|
tarmo66 kirjutas: |
Vabandan ebatäpse ülesande püstituse eest, aga neid välju on seal rohkem (20). Ükshaaval LEFT JOIN'imine ei anna olulist võitu iga välja kohta eraldi päringu tegemise ees. |
Ega sellise andmestruktuuriga ei saagi mingit ajalist võitu. On kas LEFT JOIN või siis mitmerealine SQL päring, mille siis koodis teed üheks assoc arrayks.
Magentol on täpselt sama keberniit ja seal on lahenduseks vahetabelid nagu "catalog_category_flat" ja "catalog_product_flat". Frontend pärib kõik oma andmed sealt ning jah, sedasi on tõepoolest palju kiirem, eriti kui tabelis on suur hulk andmeid.
WooCommerce võttis analoogse lähenemise ja oma 3.6 versioonis tegi analoogsed vahetabelid:
https://developer.woocommerce.com/2019/04/01/performance-improvements-in-3-6/
Kui aga andmeid väga hullult pole, siis ajab JOIN asja ära. Kui andmeid on palju ja kiirust vaja, siis tuleb hakata flat tabeleid tegema.....
_________________ https://www.e-abi.ee/ - Pangalingid, Smartposti, Post24 moodulid, Järelmaksumoodulid. Magento, Prestahop, Wordpress. Aktsepteerin Bitcoini!
Soovid lisada oma tooteid HinnaVaatlusesse? https://www.e-abi.ee/magento/kasulikud/product-exporter-and-multi-product-feed-generator-hinnavaatlus.html |
|
Kommentaarid: 63 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
1 :: |
59 |
|
tagasi üles |
|
|
napoleon
Unknown virus
liitunud: 08.12.2008
|
06.05.2021 20:22:18
|
|
|
Flat tabel on..... nii nagu on. Jõudluses saab võidu, aga andmete terviklikkusega on risk. Riski saab maandada kui ei torgi neid tabeleid koodis üldse vaid teed kõik triggerite abil.... see aga kaotab jälle mingis osas paindlikuse kuna selline struktuur paindlikuse mõttes ju ongi et ei peaks iga lisaväljaga baasi struktuuri, koodi ja kõike muud torkima.
Aga igaks juhuks olgu öeldud, et pole ma nende frameworkidega kokku puutunud. Räägin puhtalt baasi disainist.
|
|
Kommentaarid: 76 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
59 |
|
tagasi üles |
|
|
matis
HV kasutaja
liitunud: 12.04.2004
|
06.05.2021 21:13:20
|
|
|
napoleon kirjutas: |
Flat tabel on..... nii nagu on. Jõudluses saab võidu, aga andmete terviklikkusega on risk. Riski saab maandada kui ei torgi neid tabeleid koodis üldse vaid teed kõik triggerite abil.... see aga kaotab jälle mingis osas paindlikuse kuna selline struktuur paindlikuse mõttes ju ongi et ei peaks iga lisaväljaga baasi struktuuri, koodi ja kõike muud torkima.
Aga igaks juhuks olgu öeldud, et pole ma nende frameworkidega kokku puutunud. Räägin puhtalt baasi disainist. |
Jah, see on tõsi, et flat tabeli abil pole andmed terviklikud. Kuid selleks on eraldi indekseerijad, mis siis uuendavad andmeid regulaarsete intervallide tagant ja tavaliselt on see ok, et kui adminis midagi muuta, siis jõuab frontendi muudatus 1-15 minuti jooksul. Vahest kui indekseerija ei tööta, siis võivad andmed jääda mitmeks päevaks ebakorrektseteks.
_________________ https://www.e-abi.ee/ - Pangalingid, Smartposti, Post24 moodulid, Järelmaksumoodulid. Magento, Prestahop, Wordpress. Aktsepteerin Bitcoini!
Soovid lisada oma tooteid HinnaVaatlusesse? https://www.e-abi.ee/magento/kasulikud/product-exporter-and-multi-product-feed-generator-hinnavaatlus.html |
|
Kommentaarid: 63 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
1 :: |
59 |
|
tagasi üles |
|
|
tarmo66
HV vaatleja
liitunud: 13.10.2008
|
07.05.2021 18:40:06
|
|
|
Aitüma vastajatele, minu poolest võib teema lõpetatuks lugeda.
|
|
Kommentaarid: 14 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
14 |
|
tagasi üles |
|
|
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|