A woman has died after being stabbed in an Aldi supermarket in front of terrified shoppers.
The victim, in her early 30s, suffered serious injuries in the attack in Skipton on Thursday afternoon, North Yorkshire police said.
The suspect was tackled by staff and shoppers before officers arrested him after being called to the store on Keighley Road at around 3:27pm.
The 44-year-old man - who has not yet been identified - has been taken into custody.
The female victim was earlier said to be receiving treatment for serious injuries. But despite the best efforts of medics, she sadly passed away.
Her family are being supported by police officers while enquiries continue.
A woman who was in the store and asked to remain anonymous said she had "never been so scared in my life".
The witness said she heard "loads of screams" then saw the woman lying on the floor and the man pinned down as "everyone screamed and ran up and down" the supermarket.
She said: "I just saw the aftermath, I was so scared I ran off. All the staff were racing about not knowing what to do."
Police vans arrived on scene within minutes, she added.
Paramedics were also alerted to the store on Keighley Road but the woman died despite their efforts to save her.
North Yorkshire Police said the incident was not terror-related or believed to be a hate crime.
The man was initially arrested on suspicion of attempted murder but the force has now launched a murder inquiry.
The force said the victim's family has been told and they are being supported by officers.
A spokesman said: "We are not in a position to identify the victim at this stage, and we urge people respect her family's privacy and to avoid speculation and rumour on social media."
Officers will remain overnight at the supermarket.
Witnesses and anyone with information are asked to call 101.